我在QTreeView的行中有一些QPushButtons,它们显示了周围的黑色边框,我似乎无法修改它们。目前,我可以用下面的代码使按钮变灰:
for (int i = 0; i < QPalette::NColorRoles; i++){
QPalette::ColorRole thisRole = static_cast<QPalette::ColorRole>(i);
QColor newColor = commitPalette.color(QPalette::Disabled,thisRole);
int grayColor = qGray(newColor.rgb());
newColor.setRgb(grayColor,grayColor,grayColor,50);
commitPalette.setColor(QPalette::Disabled, thisRole, newColor);
}但它对边界没有任何影响。我倾向于避免使用样式表,因为我喜欢QPalette的构造函数提供的自动颜色生成

发布于 2011-09-27 08:28:47
如果你使用的是Qt creator,右击QPushButton和setStyleSheet as border: none;就是这样。
发布于 2011-09-21 23:32:45
如果您设置QButton属性isFlat = true,它应该禁用边框,除非它被单击。
https://stackoverflow.com/questions/7491603
复制相似问题