2013-03-07 73 views
1

我想创建一个下拉列表按钮,但在同一时间,我想当前选定的文本能够像QPushButton激活。以下是我前后寻找的几张照片。 (来自MS Paint的线)qt5结合QGroupBox和QPushButton

我想拥有它,所以如果用户点击行的左侧,它将重新发送任何项目显示的信号。如果用户点击下拉箭头,那么该列表将显示出来,并且从那时开始将像正常的组框一样操作,直到选择了另一个项目。

http://imgur.com/a/tFoLv

回答

2

您可以使用QToolButton,并为它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()));