Доброго времени суток. Ответа не нашел в ЧаВО и форумах, поэтому и беспокою.
Возникла проблема, хотя и мелкая. Есть проект (Расчет тарифов ком-ых услуг) с исппользованием 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), но не создает списка открытых окон.
В чем я не правильно поступил?
Заранее благодарен.
Hello, VadRay!
You wrote on Wed, 21 Jul 2004 09:00:45 GMT:
V> RTF-редактора. Смотрел исходники. Там следующая катина. Дочернее окно
V> отрабатывает событие OnCreate: V> procedure Form1.FormCreate(Sender: TObject);
V> begin
V> WindowMenu := Application.MainForm.WindowMenu;
V> end;
V>
Дочернему окну пофигу свойство WindowMenu, так что этот обработчик если он в MDIChild смысла не имеет.
О чем, кстати, и сказано в хелпе.
Установи в ObjectInspector свойство WindowMenu главной формы приложения (она д.б. MDIForm).
V> Явно обозначенной переменной WindowMenu я не нашел, также как и модуля
V> (есть подозрение, что это модуль родительской формы). Сама программа
V> примера работает (есть экзешник), однако скомпилировать не удалось, да в
V> общем это к делу не отностится. Выше указаную строчку я вставил в свой
V> проект для нескольких форм. Правда я поменял имя переменной на имя меню
V> в головной форме (с сохранением иерархии). В итоге программа
V> отрабатывает операции, предусмотренные дейсвиями (Action), но не создает
V> списка открытых окон. В чем я не правильно поступил?
V> Заранее благодарен.Posted via RSDN NNTP Server 1.9 beta
Здравствуйте, s.ts, Вы писали:
Большой рахмат. Правда я это откопал чуточку раньше, чем просмотрел ответ. В общем спасибо за помощь "прибалтам по-жизни", у которых "Тормосса этто таккие присспоссоппления, ттля останоффки аффтомоппиллля

"

. Прибалты, не обижайтесь ето я про себя. Всё тема закрыта, надеюсь.