как показать контекстное меню, когда вы щелкаете правой кнопкой мыши в QGLWidget?
Как показать всплывающее меню с помощью QGLWidget?
Ответы (1)
Переопределите класс QGLWidget и функцию mouseReleaseEvent( QMouseEvent * event )
Затем в функции mouseReleaseEvent вызовите QMenu exec() с сопоставленной глобальной позицией.
void MyWidget::mouseReleaseEvent ( QMouseEvent * event )
{
if(event->button() == Qt::RightButton)
{
QMenu menu;
QAction* openAct = new QAction("Open...", this);
menu.addAction(openAct);
menu.addSeparator();
menu.exec(mapToGlobal(event->pos()));
}
QGLWidget::mouseReleaseEvent(event); //Dont forget to pass on the event to parent
}
person
Vicken Simonian
schedule
13.04.2010