点击时有没有办法阻止QToolButton
被“压入”?我在某处读到了设置
button->setCheckable(false);
应该做的伎俩,但事实并非如此。
答案 0 :(得分:1)
有一种方法可以通过QProxyStyle来实现:
class ButtonProxyStyle : public QProxyStyle
{
public:
const int pixelMetric(PixelMetric metric, const QStyleOption *option = 0, const QWidget *widget = 0)
{
int ret = 0;
switch (metric)
{
case QStyle::PM_ButtonShiftHorizontal:
case QStyle::PM_ButtonShiftVertical:
ret = 0;
break;
default:
ret = QProxyStyle::pixelMetric(metric, option, widget);
break;
}
return ret;
}
};
然后,按下按钮:
myToolButton->setStyle(new ButtonProxyStyle);
答案 1 :(得分:0)
将QAction添加到工具栏并使用它来控制工具按钮
// button action
QAction * poBtnAction = poToolbar->addWidget(button);
// disable button
poBtnAction->setEnabled(false);