Текст модуля Unit1.pas. Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst, ExtCtrls

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst, ExtCtrls;

type

Tform1 = class(TForm)

RadioGroup1: TRadioGroup;

RadioGroup2: TRadioGroup;

RadioGroup3: TRadioGroup;

CheckListBox1: TCheckListBox;

Edit1: TEdit;

Label1: TLabel;

Label2: TLabel;

procedure RadioGroup1Click(Sender: TObject);

procedure RadioGroup2Click(Sender: TObject);

procedure RadioGroup3Click(Sender: TObject);

procedure CheckListBox1ClickCheck(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

implementation {$R *.DFM}

 

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin

case RadioGroup1.ItemIndex of

0: Edit1.Font.Style:= [ ];

1: Edit1.Font.Style:= [fsltalic];

2: Edit1.Font.Style:= [fsBold];

3: Edit1.Font.Style:= [fsltalic,fsBold];

end;

CheckListBox1ClickCheck(Self);

end;

 

procedure TForm1.RadioGroup2Click(Sender: TObject);

begin

case RadioGroup2.ItemIndex of

0: Edit1.Font.Size:= 8;

1: Edit1.Font.Size:= 10;

2: Edit1.Font.Size:= 12;

3: Edit1.Font.Size:= 14;

end

end;

 

procedure TForm1.RadioGroup3Click(Sender: TObject);

begin

case RadioGroup3.ItemIndex of

0: Edit1.Font.Color:= clBlack;

1: Edit1.Font.Color:= clGreen;

2: Edit1.Font.Color:= clRed;

3: Edit1.Font.Color:= clBlue;

end

end;

 

procedure TForm1.CheckListBox1ClickCheck(Sender: TObject);
begin

if CheckListBox1.Checked[0]

then Edit1.Font.Style:= Edit1.Font.Style + [fsStrikeOut]

else Edit1.Font.Style:= Edit1.Font.Style - [fsStrikeOut];

if CheckListBox1.Checked[1]

then Edit1.Font.Style:= Edit1.Font.Style + [fsUnderline]

else Edit1.Font.Style:= Edit1.Font.Style - [fsUnderline]:
end;

end.

 

 

Списки: ListBox и ComboBox

В целочисленном массиве А(10) найти максимальный и минимальный элементы и по­менять их местами.

Решение

1. Для нового проекта создадим новую папку, например, D:\MyProject\LBOX.

2. Откроем новый проект, используя команду главного меню File| New | Application.

3. Из страницы Standard поместим на Form1 следующие компоненты Edit, две кнопки Button и два компонента ListBox.

4. С помощью Инспектора Объектов зададим в качестве значения для свойства Text ком­понента Edit1 пустую строку. Установим для левой кнопки значение свойства Caption рав­ным ‘Ввод’ а для правой – ‘Решение’.

5. В разделе interface вставим описание массива а и используемых переменных:

a: аrrаy[1..10] of integer;

i, min, max, imax, imin: integer;

6. Выполним двойной щелчок по форме Form1, в результате чего будет создана заготовка события OnCreate для формы, возникающе­го в момент создания формы. Размещение операторов в этом обработчике во многих случаях эквивалентно размещению операторов в секции initialization модуля. Поместим там следующие строки:

i:= 0;

ListBox1.Clear;

ListBox2.Clear;

7. Активизируем двойным щелчком кнопку «Ввод» и в заготовку обработчика собы­тия

OnClick поместим следующий код:

ListBox1.Items.Add(Edit1.Text);

i:= i+1;

a[i]:= StrToInt(Edit1.Text);

Edit1.SetFocus

9. Активизируем кнопку «Решение» и в заготовку обработчика события поместим
следующий текст:

max:= a[1];

imax:= 1;

min:= a[1];

imin:= 1;

for k:= 2 to 10 do

begin

if max < a[k] then

begin

max:= a[k];

imax:= k

end;

if min > a[k] then

begin

min:= a[k];

imin:= k

end;

end;

a[imax]:= min;

a[imin]:= max;

for k:= 1 to 10 do

ListBox2.Items.Add(IntToStr(a[k]));

 

9. Для удобства работы с приложением создаём обработчик события OnKeyDown для строки ввода Edit1, в котором при нажатии на клавишу Enter фокус ввода будет переводиться на кнопку «Ввод»:

if key = 13 then Button1.SetFocus

10.Сохраним проект при помощи команды главного меню File|Save All.

11.Запустим программу с помощью клавиши F9.
Для ввода целых чисел используем строку ввода Edit. Ввод каждого числа завершаем
нажатием кнопки Enter либо щелчком мыши по кнопке «Ввод». Введенные числа отображаются в первом списке. После нажатия на клавишу «Решение» получим результат во втором списке.

Полный текст разработанного модуля.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: