Hi,
ich stehe mal wieder vor einem Problem:
Ich habe eine MDI-Applikation und eine QMenuBar mit paar Menus (File,About).
Nun möchte ich, wenn ich ein neues Childwindow erstelle(öffne) die Menüs verändern, die Menüs + Menüeintrage sind abhängig vom Inhalt des Childwindow.
Z.b. möchte ich das Menü "About" löschen, einen Menüpunkt "XYZ" anhängen und den Menüpunkt "About" wieder einsetzen (also Hilfe/About steht ja meist am Ende der MenuBar).
Ich finde jedoch keine Methode QMenuBar::removeMenu(..) oder ähnliches.
Also, weis weis jemand wie ich vorzugehen habe?
Danke, Ciao J--
Dynamische Menüs bei MDI-Anwendung
http://doc.trolltech.com/4.4/qmenu-members.html
http://doc.trolltech.com/4.4/qaction-members.html
Aber nicht alle Möglichkeiten gleichzeitig verwenden...
Sorry, disabled war nicht der richtige Ausdruck, ich meinte hide(), wobei setDisabled(true) natürlich auch eine schöne Möglichkeit wäre.
http://doc.trolltech.com/4.4/qaction-members.html
Code: Alles auswählen
QMenu *menu;
delete menu;
menu->deleteLater();
menu->hide();
menu->setVisible(false);
Sorry, disabled war nicht der richtige Ausdruck, ich meinte hide(), wobei setDisabled(true) natürlich auch eine schöne Möglichkeit wäre.
Ahh, okay. das macht Sinn. Ich habe nämlich auch versucht die Menus irgendwie zu löschen, aber ebend ohne Erfolg.
Ich danke für die Antwort, aber ich hatte es jetzt *satt*
.
Ich mache das jetzt so:
Im Konstruktor des ChildWindow generiere ich eine neue QMenuBar mit allen spezifischen Menüs, und tausche einfach mit
die MenuBar des MainWindows aus.
Is a bissl umständlicher, aber ich bin jetzt zu weit fortgeschritten damit...
Danke + Ciao J---
Ich danke für die Antwort, aber ich hatte es jetzt *satt*
Ich mache das jetzt so:
Im Konstruktor des ChildWindow generiere ich eine neue QMenuBar mit allen spezifischen Menüs, und tausche einfach mit
Code: Alles auswählen
mainWindow->setMenuWidget(newMenuBar);Is a bissl umständlicher, aber ich bin jetzt zu weit fortgeschritten damit...
Danke + Ciao J---