C++ 如何使用QToolButton
我正在尝试使用QToolBar创建一个下拉按钮。 我尝试使用以下策略: 问题是当我点击按钮时,它不会立即响应。需要单击几下才能显示菜单 我想我把代码放错地方了,但是我应该把它放在哪里呢 这是我的密码:C++ 如何使用QToolButton,c++,qt,C++,Qt,我正在尝试使用QToolBar创建一个下拉按钮。 我尝试使用以下策略: 问题是当我点击按钮时,它不会立即响应。需要单击几下才能显示菜单 我想我把代码放错地方了,但是我应该把它放在哪里呢 这是我的密码: Proto::Proto(QWidget *parent) : QMainWindow(parent), ui(new Ui::Proto) { ui->setupUi(this); QMenu *menu = new QMenu("Menu"); QWidgetAction *act
Proto::Proto(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::Proto)
{
ui->setupUi(this);
QMenu *menu = new QMenu("Menu");
QWidgetAction *action = new QWidgetAction(this);
QPushButton *button2 = new QPushButton("Click me", menu);
action->setDefaultWidget(button2);
menu->addAction(action);
ui->btnVolume->setMenu(menu);
}
拜托,有人能帮我吗?
提前感谢,您似乎忘记了将按钮连接到插槽,或者至少,您发布的代码中没有显示该按钮。我刚刚添加了这样的connect语句
QPushButton *button2 = new QPushButton("Click me", menu);
connect(button2, SIGNAL(clicked()), SLOT(dosmth()));
action->setDefaultWidget(button2);
然后实现了这个简单的dosmth Q_槽
这段代码只创建了按钮,它不能处理右键单击?实际上是这样,因为它会在某个时候打开菜单。问题是,当用户单击按钮时,它没有响应。需要点击几下才能打开菜单…刚刚解决了它。。。非常简单:只添加了一行:ui->btnVolume->setPopupModeQToolButton::InstantPopup;谢谢你的支持。。。!
void MainWindow::dosmth() {
qDebug() << "Hi";
}
Hi
Hi
Hi