我想要阻止QPushButton在点击时缩进,而只是改变它的背景颜色。
提前干杯。
发布于 2012-04-26 13:38:24
使用Qt Style Sheet是一种很容易实现的解决方案(但可能无法提供您想要的内容)。
使用样式表,可以为按钮的pressed state指定背景色。这样做会抑制缩进。例如:
pMyPushButton->setStyleSheet("QPushButton:pressed { background-color : red; }");发布于 2012-04-26 11:19:38
至于停止缩进,我认为您可以按照下面的文档执行setFlat:http://doc.qt.io/archives/qt-4.7/qpushbutton.html#flat-prop
发布于 2012-04-26 11:42:21
一种选择是将QPushButton子类化,并用您自己的实现覆盖它的paintEvent(QPaintEvent *)方法,这样就可以给它提供您想要的外观。
或者,您可以创建QCommonStyle (或QWindowsStyle等)的子类并将其传递给qApp->setStyle(),然后覆盖drawControl()方法,以便在使用元素CE_PushButtonBevel调用drawControl时,它将使用不包含State_Sunken或State_On位集合的单独QStyleOptionButton参数调用超类。(可能需要对超类的drawControl()方法进行一些检查,才能准确地找出需要什么才能获得您想要的效果)。
https://stackoverflow.com/questions/10326718
复制相似问题