[英]QMainMenu behaves weirdly if QVTKWidget is the central widget of QMainWindow
好的,我花了一些時間來跟蹤它,但我不知道如何解決。
我的Qt / vtk應用程序中的主菜單運行異常。 菜單上的單擊行為如下:
現在這並沒有那么糟糕,但是問題是狀態被記住了。 因此,如果用戶兩次單擊菜單(即,手動關閉菜單),則即使他之間使用了其他GUI元素,菜單欄上的下一次單擊也不會執行任何操作。 這導致煩人的用戶體驗。
我創建了一個最小的失敗示例:
#include <QAction>
#include <QApplication>
#include <QLabel>
#include <QMainWindow>
#include <QMenu>
#include <QMenuBar>
#include <QVTKWidget.h>
int main(int argc, char** argv)
{
QApplication app(argc, argv);
QMainWindow mainWindow;
QMenu *menu = mainWindow.menuBar()->addMenu("TestMenu");
QAction *action = menu->addAction("TestAction");
// Setting the central widget to QVTKWidget, produces a weirdly
// behaving menu bar:
// First click: pop down
// Second click: pop up
// Third click: does nothing
// Fourth click: pop down again
mainWindow.setCentralWidget(new QVTKWidget());
// Setting the central widget to any other QWidget, like QLabel, produces a
// normally behaving menu bar:
// First click: pop down
// Second click: pop up
// Third click: pop down again
// mainWindow.setCentralWidget(new QLabel("TestLabel"));
mainWindow.show();
return app.exec();
}
如果QLabel-central-widget被注釋掉,而QVTKWidget-central-widget被注釋掉,則菜單的行為正常。
有什么想法下一步要解決嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.