根据您提供的代码,您创建了一个 QPushButton(m_bClientsWindow),并将其作为默认小部件添加到一个 QWidgetAction(m_showClientsWindow)中。然后,您尝试将 m_showClientsWindow 添加到菜单栏中。
但是,请注意,QWidgetAction 不能直接添加到菜单栏中。QWidgetAction 通常用于在工具栏或上下文菜单中显示自定义小部件。如果要将动作项添加到菜单栏中,应该使用 QAction 而不是 QWidgetAction。
以下是修正后的代码示例:
QPushButton* m_bClientsWindow = new QPushButton(this);
m_bClientsWindow->setText("Clients");
m_bClientsWindow->setStyleSheet(styleSheet);
connect(m_bClientsWindow, &QPushButton::clicked, this, &MainWindow::s_menu_Clients);
QAction* m_showClientsWindow = new QAction(this);
m_showClientsWindow->setDefaultWidget(m_bClientsWindow);
this->menuBar()->addAction(m_showClientsWindow);
现在,您可以通过将 m_showClientsWindow
添加到 menuBar()
中来实现所需的功能。
内容由零声教学AI助手提供,问题来源于学员提问