- •1.Текстовые компоненты Label, Edit, Memo. Кнопка Button
- •Пример 1.1. Задание - Составить программу, вычисляющую корни квадратного уравнения
- •2. Классы и компоненты Delphi,
- •Interface
- •Interface
- •Interface
- •3. Панель переключателей RadioGroup
- •Interface
- •4. Списки: ListBox и ComboBox
- •Interface
- •Interface
- •5. Таблица StringGrid
- •Полный текст модуля Unit1.Pas
- •Interface
- •6. Создание меню. Компоненты MainMenu и PopupMenu
- •Interface
- •Interface
- •7. Диалоговые окна.
- •Interface
ЛАБОРАТОРНЫЕ РАБОТЫ: ТЕОРИЯ И ЗАДАНИЯ
1.Текстовые компоненты Label, Edit, Memo. Кнопка Button
Пример использования компонентов Label, Edit, Memo и Button
Пример 1.1. Задание - Составить программу, вычисляющую корни квадратного уравнения
а2 * х2 + а1 * х + а0=0
с произвольными коэффициентами (a2 ≠0).
Решение
Создадим папку D:\MyProject\Text (можно любую другую).
Откроем новое приложение с помощью команды главного меню File | New Application.
На форме Form1 разместим следующие компоненты: четыре метки Label, три компонента Edit, один редактор Memo и две кнопки Button
Все компоненты берем со страницы Standard Палитры Компонентов.
4. Свойству Caption метки Label1 зададим значение:
Введите коэффициенты квадратного уравнения
А2 * Х^2+А1 * Х+А0 = 0
Для того чтобы текст располагался в двух строках и был выровнен по центру для метки необходимо установить следующие значения свойств:
AutoSize - False,
WordWrap - True,
Alignment - taCenter.
Размеры метки и ее местоположение можно отрегулировать вручную.
Перейдем в свойство Font и щелкнем по кнопке с тремя точками. В появившемся окне изменим размер шрифта с 8 на 10. Нажмем ОК.
Для меток Label2, Label3 и Label4 установим свойство Caption равным ‘А0 = ‘, ‘ А1 = ‘ и ‘ А2 = ‘ соответственно.
Для компонентов Edit1, Edit2 и Edit3 установим значение свойства Text равным пустой строке.
Для компонента Memo1 выберем свойство Lines и щелкнем по кнопке с тремя точками. В появившемся окне Stringlist editor удалим строку ‘Memо1’. Нажмем ОК.
Кнопкам Button1 и Button2 установим свойство Caption равным ‘Решение’ и ‘Очистить’ соответственно.
Двойным щелчком активизируем кнопку Решение и для обработчика события OnClick вставим следующие строки:
procedure TForm1.Button1Click(Sender: TObject);
var a0, a1, a2, d, x1, x2 : double;
begin
a0 := StrToFloat(Edit1.Text);
al := StrToFloat(Edit2.Text);
a2 := StrToFloat(Edit3.Text);
d := a1*a1-4*a2*a0;
if d>=0 then begin
xl := (-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;
10. Нажмем клавишу F12 и вернемся в форму. Двойным щелчком активизируем кнопку «Очистить» и в обработчик события OnClick вставим строку
Memo1.Clear;
11.Сохраним проект в папке D:\MyProject\Text и запустим приложение на выполнение, используя функциональную клавишу F9 или кнопку «зелёный треугольник». Для решения квадратного уравнения введем коэффициенты и нажмем кнопку Решение. Для очистки окна редактора нажмем кнопку «Очистить»
Полный текст сформированного модуля Unit1.pas
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Edit1 : 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.