1

我正在尝试创建一个带有下拉列表的按钮,但同时,我希望当前选定的文本能够像 QPushButton 一样被激活。这是我在寻找之前和之后的几张照片。(来自 MS Paint 的线条)

我想要它,所以如果用户单击该行的左侧,它将重新发送显示的任何项目的信号。如果用户单击下拉箭头,该列表将显示,从那时起将像普通的组框一样工作,直到选择另一个项目。

http://imgur.com/a/tFoLv

4

1 回答 1

2

您可以使用 aQToolButton和 a QMenu

QToolButton *btn = new QToolButton();
btn->setPopupMode(QToolButton::MenuButtonPopup);

QMenu *btnMenu = new QMenu;
QAction *action1 = btnMenu->addAction("action1");
QAction *action2 = btnMenu->addAction("action2");
btn->setMenu(btnMenu);

connect(btn, SIGNAL(clicked()), this, SLOT(btnSlot()));
connect(action1, SIGNAL(triggered()), this, SLOT(action1Slot()));
connect(action2, SIGNAL(triggered()), this, SLOT(action1Slot()));
于 2013-03-07T09:19:17.100 回答