Иллюстрированный самоучитель по Tirbo Pascal




Диалоговое окно выбора режима - часть 5


Dispose(PW, Done) 

сразу за оператором

DeskTop.Insert(PW)

то вновь созданное окно будет тут же удалено с экрана, поэтому оператор Dispose нужно разместить в обработчике событий TNotebook. HandleEvent (подумайте, где именно).

После включения диалогового окна в цепочку действий, связанных с инициацией PW, появилась возможность приостановить исполнение программы в процедуре Work: вместо оператора

DeskTop.Insert(PW)

вставьте следующие строки:

Control := DeskTop.ExecView(PW); 

Dispose(PW, Done)

и добавьте описание переменной Control:

var

.....

Control: Word;

В отличие от процедуры Insert процедура ExecView не только помещает видимый элемент на экран, но и приостанавливает дальнейшее исполнение программы Work до тех пор, пока не закончится диалог с пользователем.

И, наконец, еще одно усовершенствование. Работа с программой станет удобнее, если сразу после чтения файла с данными она перейдет к их показу. Реализовать это очень просто: добавьте вызов процедуры Work в процедуру FileOpen следующим образом:

Procedure TNotebook.FileOpen;

..... begin

.....

if OpFileF then 

begin

.....

Work{Переходим к работе} 

end;

.....

end; {FileOpen}

Если Вы внесете в программу все описанные изменения и запустите ее на счет , то при попытке выйти из режима просмотра на экране будет развернуто диалоговое окно, показанное на рис. 15.10. «Нажатие» на любую кнопку этого окна не приводит ни к каким последствиям - наше окно пока откликается только на стандартную команду cmClose, связанную с клавишей Esc.

Файл с данными DataType пока еще не существует. Чтобы программа смогла нормально работать, в диалоговом окне открытия файла укажите произвольное имя, например

MYDATA. После завершения работы программы будет создан пустой файл MYDATA.DAT.




Содержание  Назад  Вперед