Текущий архив: 2007.08.05;
Скачать: CL | DM;
Вниз
TMainMenu :чтобы меню разместилось на всех формах Найти похожие ветки
← →
timonissimo © (2007-05-28 17:51) [0]Не подскажите вот что.
Есть программа из нескольких форм (ну, штук десять).
Хочу сделать по-человечески, т.е. с компонентом TMainMenu.
Можно сделать так, чтобы меню разместилось на всех формах? Я не очень соображаю в Объекто-ориентированном...
Что для этого надо сделать?
Создать новый класс формы с подобным меню или как?
← →
Jeer © (2007-05-28 18:19) [1]
> Создать новый класс формы с подобным меню
Вполне.
← →
timonissimo © (2007-05-28 18:24) [2]я вот читаю про свойство AutoMerge
наверное его надо использовать?...
← →
Loginov Dmitry © (2007-05-28 18:29) [3]Используй наследование форм
← →
Amoeba © (2007-05-28 18:33) [4]
> timonissimo © (28.05.07 18:24) [2]
>
> я вот читаю про свойство AutoMerge
> наверное его надо использовать?...
Только если разрабатывается MDI приложение.
← →
{RASkov} © (2007-05-29 02:16) [5]Еще как вариант, можно меню положить в ДатаМодуль и там описать обработчики итемов и затем нужной форме присваивать это меню, предворительно убрав его с "предыдущей формы". Конкретное меню может присутствовать только на одной форме.
← →
{RASkov} © (2007-05-29 03:18) [6]> и затем нужной форме присваивать это меню, предворительно убрав его с "предыдущей формы".
procedure TFormN.FormActivate();
begin
Menu := DataModul.MainMenu;
end;
procedure TFormN.FormDeactivate();
begin
Menu := nil;
end;
← →
timonissimo © (2007-05-29 10:05) [7]А в данном случае переменная Menu это свойство TFormN?
Т.е. фактически TFormN.Menu?
Просто у меня ща delphi нет, не могу глянуть...
← →
{RASkov} © (2007-05-29 11:41) [8]> [7] timonissimo © (29.05.07 10:05)
> А в данном случае переменная Menu это свойство TFormN?
Да... все верно. И еще один "косячок" при таких "прыжках" меню, будет менятся ClientHeight форм. Нужно будет это учитывать....
Или как вариант на FormDeactivate(); вместо присваения nil - можно присваивать TmpMenu.
TmpMenu - это обычное TMainMenu, можно всего-лишь с одним пунктом.... оно использоваться не будет, чисто для занятия места на форме пока форма не акивна..
← →
{RASkov} © (2007-05-29 11:42) [9]> акивна..
*активна
← →
timonissimo © (2007-05-29 11:48) [10]Спасибо! Будем пробовать!
Страницы: 1 вся ветка
Текущий архив: 2007.08.05;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.037 c