Seite 1 von 1

Kontextmenü für einzelnes Widget (QFrame)?

Verfasst: 18. Juni 2005 02:47
von hulio
Kann ich ein Kontextmemü für ein einzelnes Widget (z. B. QFrame) erstellen. Alle meine Versuche schlugen bisher fehl.

Hulio :?:

Verfasst: 18. Juni 2005 08:50
von ArneStocker

Code: Alles auswählen

QWhatsThis::add(pWidget,tr("<b>Überschrift</b><p>Dies ist eine Kontexthilfe</p>"))
Gruss Arne

Verfasst: 18. Juni 2005 09:59
von lepsai
Kontextmenu ist was anderes als Kontexthilfe...
So wird's gemacht:

Code: Alles auswählen

QPopupMenu * contextMenu = new QPopupMenu( this );
QLabel *caption = new QLabel( "<font color=darkblue><u><b>" "Context Menu</b></u></font>", this );
caption->setAlignment( Qt::AlignCenter );
contextMenu->insertItem( caption );
contextMenu->insertItem( "&Save", this, SLOT(save()), CTRL+Key_S );
contextMenu->exec( QCursor::pos() );

Verfasst: 18. Juni 2005 10:01
von lepsai
und das Ganze natürlich in:
void QWidget::contextMenuEvent ( QContextMenuEvent * e ), die du überladen must

Verfasst: 18. Juni 2005 16:46
von ArneStocker
Kontextmenu ist was anderes als Kontexthilfe ...
hab' mich glatt verlesen :oops: ... das war etwas zu früh heute morgen. Nächstens trinke ich erst meinem Kaffee :-)

Gruss Arne

Verfasst: 20. April 2009 12:16
von Exasperation
Ich versuche auch gerade ein ContextMenu zu erstellen, allerdings bringt er mir da folgende Meldung:

Code: Alles auswählen

error C2027: Verwendung des undefinierten Typs "QPopupMenu"
Weiß jemand, woran das liegt?

Hier mein Code:

Code: Alles auswählen

void main_window::contextMenuEvent( QContextMenuEvent *event)
{
	QPopupMenu* context_menu = new QPopupMenu( this );

	context_menu->addAction( m_reset_view_action );
	context_menu->addTo( m_gl_widget );

	context_menu->exec(event->globalPos());
}

Verfasst: 20. April 2009 12:52
von franzf
QPopupMenu ist Qt3 :/
Wenn du die Qt3Support-Libs installiert hast, kannst du Q3PopupMenu verwenden.

Ansonsten eben halt so ein normales QMenu :)
Das hat sogar eine Methode "popup()"!

Grüße
Franz

Verfasst: 20. April 2009 12:56
von Exasperation
Achso, danke :D Das erklärt warum ich es nicht in der Doku von 4.4.3 gefunden hab ^^

Ja das mit dem QMenu hab ich auch ausprobiert, sieht auch gut aus :)