Читайте также:
|
|
Пример использования компонентов Label, Edit, Memo и Button
Составить программу, вычисляющую корни квадратного уравнения
с произвольными коэффициентами (а2<>0).
Решение
1. Создадим папку D:\MyProject\Text (можно любую другую).
2. Откроем новое приложение с помощью команды главного меню File | New Application.
3. На форме Forml разместим следующие компоненты (см. рис.2.12): Все компоненты берем со страницы Standard
Палитры Компонентов.
4. Свойству Caption метки Label1 зададим зна
чение:
Введите коэффициенты квадратного уравнения
Для того чтобы текст располагался в двух
Рис. 2.12. Размещение компонентов классов TLabel, TEdit, TMemo и TButton на форме |
строках и был выровнен по центру для метки
необходимо установить следующие значения
свойств:
AutoSize - False,
Wordwrap - True,
Alignment - taCenter.
Размеры метки и ее местоположение можно
отрегулировать вручную.
Перейдем в свойство Font и щелкнем по кнопке с тремя точками. В появившемся окне изменим размер шрифта с 8 на 10. Нажмем ОК.
5. Для меток Label2, Label3 и Label4 установим свойство Caption равным 'А0=’, ‘А1=’ и 'А2=' соответственно.
6. Для компонентов Edit1, Edit2 и Edit3 установим значение свойства Text равным пустой строке.
7. Для компонента Memo1 выберем свойство Lines и щелкнем по кнопке с тремя точками. В появившемся окне String list editor удалим строку 'Memo1’. Нажмем ОК.
8. Кнопкам Button1 и Button2 установим свойство Caption равным 'Решение' и 'Очистить' соответственно.
9. Двойным щелчком активизируем кнопку Решение и для обработчика события OnClick вставим следующие строки:
procedure Tform1.Button1Click(Sender: TObject);
var a0,a1,a2,d,x1,x2:double;
begin
a0:= StrToFloat(Editl.Text);
a1:= StrToFloat(Edit2.Text);
a2:= StrToFloat(Edit3.Text);
d:= a1*a1-4*a2*a0;
if d>=0 then
Begin
x1:= (-a1+sqrt(d))/(2*a2);
x2:= (-a1-sqrt(d))/(2*a2); Memo1.Lines.Add('Результат:');
Memo1.Lines.Add('xl='+FloatToStrF(x1,ffGeneral,7,2));
Memo1.Lines.Add('x2='+FloatToStrF(x2,ffGeneral,7,2));
End
Else
Memo1.Lines.Add('Решений нет:');
end;
Напомним, что полужирным шрифтом мы выделяем строки, набранные программистом.
10. Нажмем клавишу F12 и вернемся в форму. Двойным щелчком активизируем кнопку Очистить и в обработчик события OnClick вставим строку Memol.Clear;
11. Сохраним проект в папке D:\MyProject\Text и запустим приложение на выполнение, используя функци ональную клавишу F9. Для решения квадратного уравнения введем коэффициенты и нажмем кнопку Решение. Для очистки окна редактора нажмем кнопку Очистить (см. рисунок 2.13).
Приведем полный текст сформированного модуля. Текст модуля TUnit1.pas
unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type Tform1 = class(TForm)
Labell: Tlabe1;
Label2: Tlabe1;
Label3: Tlabe1;
Label4: Tlabe1;
Editl: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Memo1: TMemo;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject); private
{ Private declarations } public
{ Public declarations } end;
var
Form1: Tform1;
implementation
{$R *.DFM}
procedure Tform1.Button1Click(Sender: TObject);
var a0,a1,a2,d,x1,x2:double;
begin
a0:= StrToFloat(Edit1.Text);
a1:= StrToFloat(Edit2.Text);
a2:= StrToFloat(Edit3.Text);
d:= a1*a1-4*a2*a0;
if d>=0 then
Begin
x1:= (-a1+sqrt(d))/(2*a2); x2:= (-a1-sqrt(d))/(2*a2); Memo1.Lines.Add('Результат:');
Memo1.Lines.Add('x1='+FloatToStrF(x1,ffGeneral,7,2)); Memo1.Lines.Add('x2='+FloatToStrF(x2,ffGeneral,7,2));
End
Else
Memo1.Lines.Add('Решений нет: ');
end;
procedure Tform1.Button2Click(Sender: TObject);
begin
Memo1.Clear;
end;
End.
Дата добавления: 2015-11-15; просмотров: 32 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Компонеты страницы Standard | | | Технология COM |