При выборе из меню
? команды О программе на экране должно появиться одноименное окно (рис.
15.15).
Рис. 15.15. Окно
О программе
Чтобы программа во
время своей работы могла вывести на экран окно, отличное от главного (стартового),
нужно создать это окно. Делается это выбором из меню File команды New
form. В результате выполнения команды New form в проект
добавляется новая форма и соответствующим ей модуль.
Вид формы AboutForm
после добавления необходимых компонентов приведен на рис. 15.16, значения ее
свойств — в табл. 15.8.
Рис. 15.16. Форма
О программе
Таблица 15.8.
Значения свойств формы О программе
Свойство |
Значение |
||
Name |
AboutForm |
||
Caption |
0 программе |
||
BorderStyle |
BsSingle |
||
Borderlcons . biSystemMenu |
False |
||
Borderlcons .biMininize |
False |
||
Borderlcons . biMaximize |
False |
||
Вывод окна О программе
выполняет процедура обработки события click, которое происходит в результате
выбора из меню ? команды О программе.
Непосредственно вывод
окна выполняет метод showModai, который выводит окно как модальный диалог.
Листинг 15.8.
Вывод окна О программе
// выбор из меню ? команды О программе
procedure TForm1.N4Click(Sender: TObject);
begin
AboutForm.Top :=
Trunc(Forml.Top
+ Forml.Height/2 - AboutForm.Height/2);
AboutForm.Left :=
Trunc
(Form1.Left +Form1 .Width/2
- AboutForm. Width/2 }; AboutForm. ShowModal;
end;
Примечание
Модальный диалог перехватывает все события, адресованные другим окнам приложения. Пока модальный диалог находится на экране, другие окна приложения не реагируют на действия пользователя. Для продолжения работы с приложением нужно закрыть модальный диалог. В большинстве программ в том числе и в Delphi, информация о программе реализована как модальный диалог.
Если не предпринимать
никаких усилий, то окно О программе появится в той точке экрана, в которой
находилась форма во время ее разработки Вместе с тем, можно "привязать"
это окно к главному окну программы так. чтобы оно появлялось в центре главного
окна. Привязка осуществляется на основании информации о текущем положении главного
окна программы (свойства тор и Left) и размере окна О программе. Окно
О программе должно быть удалено с экрана в результате щелчка на кнопке
Ok. Процедура обработки этого события приведена ниже.
procedure TAboutForm.ButtonlClick (Sender: TObject) ;
begin
ModalResult := mrOk;
end;