Мелкая проблема с окнами MDI (меню Окно). (ИСР - Delphi6)
От: VadRay Россия  
Дата: 21.07.04 09:00
Оценка:
Доброго времени суток. Ответа не нашел в ЧаВО и форумах, поэтому и беспокою.
Возникла проблема, хотя и мелкая. Есть проект (Расчет тарифов ком-ых услуг) с исппользованием MDI-окон. Все окна, в том числе и дочерние имеют WindowState wsMaximized. Требуется создать менюшку для работы с окнами, на подобие Мелкософтовских офисных программ (Word Excel etc). Во-первых, половину я сделал, т.е создал по шаблону меню Окно. Кое-что мне не нужное удалил: Close, Hide, Show. Через ActionList создал соответствующие действия: Каскад (Cascade), Выравнивание (ArrangeAll), Распределение по вертикали (TileVertical). Все, что можно связал. Проблема появилась в создании списка открытых окон. По идее, в хелпе есть описание CustomForm.WindowMenu. Там написано, что список формируется автоматически. В книге Пола Килмера "Создание приложений в Delphi" есть пример приложения на основе RTF-редактора. Смотрел исходники. Там следующая катина. Дочернее окно отрабатывает событие OnCreate:
procedure Form1.FormCreate(Sender: TObject);
begin
  WindowMenu := Application.MainForm.WindowMenu;
end;


Явно обозначенной переменной WindowMenu я не нашел, также как и модуля (есть подозрение, что это модуль родительской формы). Сама программа примера работает (есть экзешник), однако скомпилировать не удалось, да в общем это к делу не отностится.
Выше указаную строчку я вставил в свой проект для нескольких форм. Правда я поменял имя переменной на имя меню в головной форме (с сохранением иерархии). В итоге программа отрабатывает операции, предусмотренные дейсвиями (Action), но не создает списка открытых окон.
В чем я не правильно поступил?
Заранее благодарен.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.