Информация о программе

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