Информация о программе
При выборе из меню ? команды О программе на экране должно появиться одноименное окно (рис. 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;