更改QLCD号码的数字颜色(Changing the Digit Color of QLCD Num

2019-08-07 23:21发布

我想改变的背景和数字颜色QLCDNumber在Qt Designer中,我会在我的Python程序使用设计(GUI)。

有人说,这可以让我加入样式表Qt的设计师。

QLCDNumber{color:rgb(85, 85, 255);background-color:rgb(0, 170, 255);}

它是成功的背景颜色不是数字的颜色。

如何争取获得数字彩

谢谢


我不能用过去两年的setColor(光边框和黑色边框)。 我是从生成的Qt4设计蟒代码(GUI)与pyuic4工具。 我加入了代码为我的Python代码文件如下(截至的.py不.UI)

self.palette = self.withpalette.palette()
self.palette.setColor(QtGui.Palette.WindowText,QtGui.QColor(85,85,255))
self.palette.setColor(QtGui.Palette.Background,QtGui.QColor(0,170,255))
self.palette.setColor(QtGui.Palette.Light,QtGui.QColor(255,0,0))
self.palette.setColor(QtGui.Palette.Dark,QtGui.QColor(0,255,0))
self.withpalette.setPalette(self.palette)

Answer 1:

其实,它的工作原理。 QLCDNumber ,默认情况下,涂料在“调高”风格的数字。 对于小尺寸,这些边界,让升高的影响将主要涵盖数字,你不会看到正常的颜色。 如果你把它大,它会显示:

如果你不想要这个“凸起”的效果,你可以把它关掉setSegmentStyle

lcd.setSegmentStyle(QtGui.QLCDNumber.Flat)

在另一方面,如果你想在“调高”的效果,但要控制它,你需要通过做QPaletteQPalette.LightQPalette.Dark是控制这些边界的两种颜色。

# get the palette
palette = lcd.palette()

# foreground color
palette.setColor(palette.WindowText, QtGui.QColor(85, 85, 255))
# background color
palette.setColor(palette.Background, QtGui.QColor(0, 170, 255))
# "light" border
palette.setColor(palette.Light, QtGui.QColor(255, 0, 0))
# "dark" border
palette.setColor(palette.Dark, QtGui.QColor(0, 255, 0))

# set the palette
lcd.setPalette(palette)



文章来源: Changing the Digit Color of QLCD Number
标签: python pyqt4