Вниз
Скачать: CL | DM;

MDI   Найти похожие ветки 

← →
First_May ©   (2002-10-17 10:32) [0]

Подскажите пожалуйста, как можно создать меню в дочерней форме MDI проекта?


← →
Игорь Шевченко ©   (2002-10-17 11:11) [1]

А какие проблемы ?


← →
First_May ©   (2002-10-17 12:02) [2]

Проблема в том, что если есть меню в MDIForm и MDIChild, то при создании меню из MDIChild добавляется в главное меню. А хотелось бы, что бы каждая форма имела бы свое меню и находилось бы там, где и должно ей быть как я хочу.


← →
Игорь Шевченко ©   (2002-10-17 12:39) [3]

У меню есть свойство AutoMerge


← →
First_May ©   (2002-10-17 14:09) [4]

Оно ничего не дает. Свойство GroupIndex тоже не подходит...


← →
First_May ©   (2002-10-17 17:21) [5]

Других вариантов нет???


← →
Игорь Шевченко ©   (2002-10-17 17:53) [6]

Угу, ошибся я. Извиняюсь.
Вот почему нельзя: (forms.pas)

if not (Menu.AutoMerge or (FormStyle = fsMDIChild)) or
(csDesigning in ComponentState) then
begin
if HandleAllocated then
begin
if Windows.GetMenu(Handle) <> Menu.Handle then
Windows.SetMenu(Handle, Menu.Handle);
Value.WindowHandle := Handle;
end;
end


← →
First_May ©   (2002-10-17 18:31) [7]

Так как быть??? :))


← →
Переяслов Г   (2002-10-17 19:22) [8]

Вообще-то по сттандартам интерфейса меню в MDI-child делать не принято. Может быть, имеет смысл использовать другие контролы?


← →
First_May ©   (2002-10-18 14:05) [9]

Ну а если я хочу сделать именно так!!!


← →
Reindeer Moss Eater   (2002-10-18 14:11) [10]

У меня это делается таким способом:
На MDIChild форме есть TMainMenu и TToolBar.

В OnCreate формы выполняется код:
SetToolBarFromMenu(ToolBar1,MainMenu1.Items);
Menu:=nil;

procedure SetToolBarFromMenu(ToolBar: TToolBar; Items: TMenuItem);
var i: integer; Button: TToolButton;
begin
for i := Pred(Items.Count) downto 0 do
begin
Button := TToolButton.Create(ToolBar.Owner);
with Button do
begin
Parent := ToolBar;
MenuItem := Items[i];
Grouped := True;
AutoSize := True;
end;
end;
ToolBar.Font.Assign(Screen.MenuFont);
end;




Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
1-92420
Leny
2002-10-17 12:51
2002.10.28
Два вопроса по Excel


3-92390
Sectey
2002-10-04 08:24
2002.10.28
Стабильный SQL сервер.


14-92683
Undert
2002-10-07 21:46
2002.10.28
Кто может предложить ...


3-92401
alek123
2002-10-08 14:43
2002.10.28
ODBC


1-92559
3asys
2002-10-16 15:04
2002.10.28
Упаковка в exe-шник




   Наверх