1.      Сохранить новый проект в папке «ЛР2» 
2.      Изменить заголовок формы (свойство Caption) на «Страница Стандартных компонентов. 
3.      В верхнюю часть формы добавить компонент TРanel (как показано на рис.). Используем ее как заголовок для формы. Установить свойство Caption как «Демонстрация страницы VCL «Стандартная».
4.      Добавить компонент TLabel, переименовав его согласно рис.
5.      Ниже метки расположить компонент TEdit, очистить его свойство Text.
6.      Добавить компонент TMemo. Вызвать справку по компоненту TMemo, изучить его свойства Align, ScrollBars, WordWrap, WantReturns. Попробовать задавать им различные значения, откомпилировать проект и сравнивтаь результаты. Удалить из свойства Lines текст, добавить несколько строк своего текста.
7.      Добавить компонент TRadioGroup, изменить заголовок согласно рис. В свойство Items ввести названия 4-х кнопок. Свойство ItemIndex указывает на номер кнопки, выбранной по умолчанию (-1 ничего не выбрано, 0 – выбрана 1-ая и т.д.). В код обработчика события OnClick ввести
procedure Form1.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex=0 Then Form1.Color:=clSilver;
if RadioGroup1.ItemIndex=1 Then Form1.Color:=clBlue;
if RadioGroup1.ItemIndex=2 Then Form1.Color:=clYellow;
if RadioGroup1.ItemIndex=3 Then Form1.Color:=clRed;
end;
8.      Добавить компонент TScrollBar. В событие OnChange дабавить код 
procedure Form1.ScrollBar1Change(Sender: TObject);
begin
RadioGroup1.ItemIndex:=ScrollBar1.Position;
end;
9.      Добавить компонент TСomboBox. 
10.  Добавить компонент  TListBox, установить свойство IntegralHeigt=True (выяснить, что это означает). Ввести несколько (>3) строк.
11.  Добавить компонент TGroupBox. Добавить в группу четыре TButton, две TRadioButton, две TCheckBox. Изменить заголовки этих компонентов согласно  рис. 
У одной из RadioButton установить свойство Checked=True.
12.  Для Button1 в код обработчика события OnClick ввести
procedure Form1.Button1Click(Sender: TObject);
var
   x:integer;
begin
   Memo1.Clear; //Очистка содержимого Memo
   Memo1.Lines.Add(Edit1.Text); //скопировать в Memo текст из Edit1
   Memo1.Lines.Add(ComboBox1.Text); //скопировать в Memo текст из ComboBox
   //скопировать в Memo1 выбранный текст из окна списка ListBox1
   Memo1.Lines.Add('ListBox Строка #'+IntToStr(ListBox1.ItemIndex+1));
   if RadioButton1.Checked then Memo1.Color:=clWhite;
   if RadioButton2.Checked Then Memo1.Color:=clAqua;
end;
13.  Для Button2 в код обработчика события OnClick ввести
procedure Form1.Button2Click(Sender: TObject);
begin
   if CheckBox1.Checked then Form1.Font.Style:=[fsItalic]
                              else Form1.Font.Style:=[ ];
   if CheckBox2.Checked then Form1.Font.Color:=clPurple
                              else Form1.Font.Color:=clBlack;
end;
14.  Для Button3 в код обработчика события OnClick  ввести
procedure Form1.Button3Click(Sender: TObject);
begin
   Close;
end;
15.  Код для TButton4 пока отсутствует. Временно установить ее свойство Enable=False
16.  Добавить компонент TMainMenu (невизуальный). Двойным щелчком на свойстве Items запустить конструктор меню (либо из контекстного меню). Инспектор объектов при этом изменится. Установить свойство Caption=&Файл (амперсант& сообщает, что следующую за ним букву нужно подчеркнуть и включить ее в комбинацию быстрых клавиш. Здесь – Alt+Ф).
В выпадающем меню добавить пункт &Выход. Рядом с &Файл добавить пункт &Помощь с выпадающим списком из двух команд: По&мощь и &О программе… Разделить их между собой чертою, для чего добавить дефис (-) в свойство Caption строки меню сразу под По&мощь. Для пункта меню &Выход ввести код обработчика события Button3Click. Для команды &О программе… вывести окно сообщения со своими данными (используйте функцию ShowMessage).
17.  Добавить компонент TPopupMenu. Запустить конструктор меню, добавить команды «Готово» и «Обновить шрифты». Выбрать для них события, аналогичные событиям кнопок. Свяжите созданное меню с формой: в свойстве формы PopupMenu укажите PopupMenu1.
18.  Протестировать приложение.
19.   Для защиты работы необходимо уметь ответить на вопросы по своёствам и методам используемых в ней стандартных компонентов.
Немає коментарів:
Дописати коментар