Label中使用setBold方法的粗体字体

D.S*_*lov 5 python pyqt4

无法为标签制作粗体字体.我的代码出了什么问题?

self.label = QtGui.QLabel('Bla', self)
self.label.setFont(QtGui.QFont.setBold(True))
Run Code Online (Sandbox Code Playgroud)

Mel*_*Mel 11

setBold是一种方法QFont:它需要一个实例QFont.你不能直接打电话QtGui.QFont.setBold(),因为没有什么可以设置为粗体.

您必须先创建QFont对象,然后将其设置为粗体,然后将其设置为标签的字体.

myFont=QtGui.QFont()
myFont.setBold(True)
self.label.setFont(myFont)
Run Code Online (Sandbox Code Playgroud)

请注意,这self.label.setFont(QtGui.QFont().setBold(True))也不起作用,因为setBold返回None.

如果你想要一个单行,QFont可以用参数创建,其中一个是权重.对于大胆的Times字体:

self.label.setFont(QtGui.QFont("Times",weight=QtGui.QFont.Bold))
Run Code Online (Sandbox Code Playgroud)


小智 5

self.label.setFont.setStyleSheet("font-weight: bold")
Run Code Online (Sandbox Code Playgroud)

我相信更容易