Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ_ЗАД_ООПТС_15_06_2012.doc
Скачиваний:
7
Добавлен:
24.09.2019
Размер:
193.54 Кб
Скачать

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.

4. Списки: ListBox и ComboBox

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

Решение

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

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

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

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

  3. В разделе 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

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

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

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

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

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

Текст модуля Unit1.pas

unit Unit1;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]