W jaki sposób w czasie działania aplikacji dodawać lub usuwać
elementy menu. Chodzi mi aby w aplikacji MDI były wyświetlane
w menu widok nazwy wszyskich aktualnie otwartych okien.
Podobnie jak ma to miejsce np. w wordzie ew żebym z menu kontekstowego mogł sobie wybrać odpowiednie okno
W jaki sposób w czasie działania aplikacji dodawać lub usuwać
elementy menu. Chodzi mi aby w aplikacji MDI były wyświetlane
w menu widok nazwy wszyskich aktualnie otwartych okien.
Podobnie jak ma to miejsce np. w wordzie ew żebym z menu kontekstowego mogł sobie wybrać odpowiednie okno
tez to ostatnio mialem robic ale ostatecznie nie wyszlo. Dla menu Window w zdarzeniu OnClick dajesz żeby sprawdzal czy MDIChildCount ( czy jakos jest > 0) jesli tak to w pętli for i := 0 to MDIChildCount-1 robisz Menu.Add(DodawaneMenu) wczesnie musisz Utworzyc DodawaneMenu := TMenu.Create(Self), a potem jeszcze przypisac jej caption DodawaneMenu.Caption := MDIChildren[I].Caption;
pewnie duzo bledow ... ale coz ...
nara
A nie lepiej zrobić nowy element menu i w opcjach formy ustawić WindowsMenu na ten element?
A nie lepiej zrobić nowy element menu i w opcjach formy ustawić WindowsMenu na ten element?
no ale po co całe menu tworzyc ? Przecież tam występują też stałe elementy (Kaskada, Sąsiadująco...) więc nie rozumie po co tworzyć nowe.
Przypisuj tagi, jest też funkcja Find(Caption: TCaption): TMenuItem; jej też uzyj, bo przeszukiwanie item po itemie bez menuhacka byłoby uciążliwe
NIE OTO MI CHODZIŁO
jak ktoś nie wie jak to wygląda niech się do pierszego lepszego WORDA popatrzy
w jaki sposób dodać DOWOLNY NOWY ELEMENT do komponentu MainMenu oraz POPUPmenu w czasie działania aplikacji
w jaki sposób się childami operuje to Delphi 6 dla każdego UCZY
Człowieku, opanuj się!
with TMenuItem.Create([podmenu, w którym trzeba utworzyć, czyli TMenuItem]) do
begin
Name:='blabla';
Caption:='bleble';
Tag:=123;
end;
Przetestuj zanim powiesz, że nie o to chodzi!
nio tak to co innego:)
ale mi kazano robić nowe menu:)