用Python在qt5.10中加载自己的字体(pyqt5.10)

2024-09-27 04:19:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在安装了qt5.10和pyqt5.10的centos7(python3.6.2)上的Python应用程序中加载自己的字体。我尝试用以下代码:

id = QFontDatabase.addApplicationFont("/PATH/party.ttf")
_fontstr = QFontDatabase.applicationFontFamilies(id).at(0)
_font = QFont(_fontstr, 8)
app.setFont(font)

但是,我收到:

AttributeError: 'list' object has no attribute 'at'

我检查了字体文件是否已找到,即id!=1,等于0。在

此外,我检查了:

^{pr2}$

我预期类型是QStringList,正如手册中建议的那样(http://doc.qt.io/qt-5/qfontdatabase.html#applicationFontFamilies),但事实似乎并非如此。我也不能调用像removeDuplicates()这样的其他方法,因为在list中没有相应的属性。在


Tags: path代码id应用程序party字体ttfqt
1条回答
网友
1楼 · 发布于 2024-09-27 04:19:57

看起来,自从pyQt 5以来,python str对象被使用,其中QString是预期的,而{}的行为也相应。因此,在本例中,只需使用python方法:

_fontstr = QFontDatabase.applicationFontFamilies(id)[0]

相关问题 更多 >

    热门问题