Jul*_*ian 4 python gtk qt pyside
每次我尝试将样式表应用到QPushButton时,我都会收到错误:
(python:21347): Gtk-CRITICAL **: IA__gtk_widget_get_direction: assertion 'GTK_IS_WIDGET (widget)' failed".
Run Code Online (Sandbox Code Playgroud)
错误出现两次,但程序仍然运行正常,样式表似乎正确应用.这是仍然产生错误的最小代码:
import sys
from PySide import QtGui
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
wid = QtGui.QWidget()
layout = QtGui.QVBoxLayout()
button = QtGui.QPushButton("Button")
button.setStyleSheet("QPushButton { color: black }")
layout.addWidget(button)
wid.setLayout(layout)
wid.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
注释掉button.setStyleSheet可以消除错误消息.如果它有所作为,我将使用repo中的库在Xubuntu 13.10下运行它.
这个错误显然不是一个严重的问题,因为代码运行时没有遇到麻烦,但我真的想摆脱错误信息!
它似乎特定于您的平台.有许多错误报告具有相同的错误.但是尝试为您的应用设置cleanlooks样式.像这样的东西:
app = QtGui.QApplication(sys.argv)
#QCleanlooksStyle
app.setStyle('cleanlooks')
Run Code Online (Sandbox Code Playgroud)
或者使用命令行:
./myapp -style cleanlooks
Run Code Online (Sandbox Code Playgroud)