每次我使用QFontDialog.getFont()
获取字体时,它都返回相同的QFont
对象。在
font, ok = QFontDialog.getFont()
print(font)
if ok:
self.lbl.setFont(font)
print(self.lbl.font())
上面是代码段,结果是下面的(我做了不同的选择,但是QLabel
的字体和我从{
更新:
以下是有关我的环境的一些信息:
我用@ekhurvo测试了代码,结果很奇怪:
BEFORE:
string:.SF NS Text, 13,-1,5,50,0,0,0,0,0
family:.SF NS Text
size:13
AFTER:
string:.SF NS Text, 13,-1,5,50,0,0,0,0,0
family:.SF NS Text
size:13
更新:
这似乎是由只影响macOS的bug引起的:请参见QTBUG-6071和QTBUG-69878。这应该已经在Qt-5.12中修复了,所以您需要确保安装了Qt5和PyQt5的最新版本,才能解决这个问题。在
下面是一个测试脚本,其中包含我在Linux上使用Qt-5.12.0和PyQt-5.11.3得到的输出的一些屏幕截图。正如你所看到的,一切都按预期进行。如果您得到了不同的行为,您应该edit your question并说明您正在使用的Qt和PyQt的确切版本,在哪个平台上进行测试,并显示测试脚本的一些示例输出。在
测试脚本:
输出:
<PyQt5.QtGui.QFont object at 0x10b4287b8>
只提供对象在内存中的位置,它基本上是一个内存单元号,但以十六进制表示。您可以在同一个内存空间中存储一个不同的对象(这里是一个不同的QFont对象)。在您可以通过执行以下操作来检查这里的QFont对象是否是您选择的对象:
^{pr2}$相关问题 更多 >
编程相关推荐