Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MainMenu & Merge


andy_prokofiev ©   (2002-08-22 11:34:00) 

Есть форма MainForm (FormStyle = fsNormal) c FormMainMenu : TMainMenu, на которую в run-time вставляется фрейм, у которых также есть FrameMainMenu : TMainMenu.

var xF : TFrameX;

procedure MainForm.BtnClick(...);
begin
if Assigned(xF) then FreeAndNil(xF);

xF := TFrameX.Create(Self);
xF.Parent := Self;
//...
xF.Visible := true;
FormMainMenu.Merge(xF.FrameMainMenu);
// меню из фрейма успешно добавляется в главное меню формы
end;

procedure MainForm.Btn2Click(...);
var xF3 : TForm3;

begin
xF3 := TForm3.Create(Self);
...
xF.Show;
// при появлении этой немодальной формы добавленное меню
// пропадает из меню главной формы
end;

procedure MainForm.Btn3Click(...);
var xF3 : TForm3;
begin
xF3 := TForm3.Create(Self);
try
// ...
xF.ShowModal;
finally
xF.Free;
end;
// при появлении этой формы добавленный пункт меню НЕ
// пропадает из меню главной формы
end;

В чем причина и как с этим бороться?


andy_prokofiev   (2002-08-22 16:07:00) [1]

А вот если у Form3 поставить FormStyle = fsMDIForm (!!!),
то меню не пропадает, но это как-то неприлично...


Игорь Шевченко   (2002-08-22 16:04:00) [2]

Тогда отладчик в руки


andy_prokofiev   (2002-08-22 16:04:00) [3]

И, конечно, я описАлся
xF3.Show;

xF3.ShowModal; xF3.Free;


andy_prokofiev   (2002-08-22 16:02:00) [4]

Я создал простой пример и этот фрейм и эта форма пустые.
(на фрейме есть компонент MainMenu, конечно)


Игорь Шевченко   (2002-08-22 15:59:00) [5]

А код Form3 и Frame ?


andy_prokofiev   (2002-08-22 15:58:00) [6]

???


Наверх

Титульная страница Поиск, карта сайта Написать письмо