Ich schreibe ein Popup-Menü für ein Qt-Drucktasten-Widget, sobald der Druckknopf angeklickt wird, erscheint ein Popup-Menü (unter dem Druckknopf).Position (nach rechts) von Qt PushButton Popup-Menü setzen
Das Popup-Menü ist standardmäßig links unten. Gibt es irgendwelche Möglichkeiten, das Popup-Menü auf der rechten Seite unterhalb der Drucktaste zu öffnen?
Es gibt keine Funktion zum Einstellen der Position ... also frage ich mich, ob es eine ausgeklügelte Art und Weise gibt, dies zu tun?
Hier sind einige Code (für Pop-up-Menü):
QMenu *menuMode = new QMenu(this);
min = menu ->addAction("In");
mout = menu ->addAction("out");
ui->pushButtonMode->setMenu(menuMode); //I am writing in MainWindow, that's there is ui
Vielen Dank für jede Orientierung und Beratung.
Danke, ich arbeite daran! Darf ich fragen, warum es 'QPushButton * b 'in der Klasse' PopupMenu' gibt? Und wird die 'showEvent' Funktion jedes Mal aufgerufen, wenn ich auf den Push Button für das PopupMenu klicke? – Ryan
Außerdem bin ich auf diese Fehler gestoßen:'' popupmenu.obj: Fehler LNK2001: nicht aufgelöstes externes Symbol "public: virtuelle Struktur QMetaObject const * __cdecl PopUpMenu :: metaObject (void) const" 'popupmenu.obj: Fehler LNK2001: nicht aufgelöstes externes Symbol" public: virtual void * __cdecl PopupMenu :: qt_metacast (char const *)“' ' ' popupmenu.obj: Fehler LNK2001: extern Symbol "public: virtual int __cdecl PopupMenu :: qt_metacall (enum QMetaObject :: Anruf, int, void * *)" ' I stieß auf diese Art Fehler zuvor, aber ich weiß auch nicht, warum es mit QMetaObject in Verbindung steht – Ryan
@Ryan 'QPushButton * b' wird verwendet, um dem PopupMenu zu sagen, an welcher Button-Instanz es ausgerichtet werden sollte. Ja, 'showEvent' wird jedes Mal aufgerufen, wenn auf die Schaltfläche geklickt wird. über Ihre Fehler: werfen Sie einen Blick auf [diese SO Frage und Antworten] (http://stackoverflow.com/questions/14170770/unresolved-external-symbol-public-virtual-struct-qmetaobject-const-thiscal) –