Python PyQt5:Gtk CRITICAL**:IA_ugtk_widget_style_get:assertion';GTK#u是#u小部件(WIDGET)和#x27;失败

Python PyQt5:Gtk CRITICAL**:IA_ugtk_widget_style_get:assertion';GTK#u是#u小部件(WIDGET)和#x27;失败,python,qt,pyqt,qt5,pyqt5,Python,Qt,Pyqt,Qt5,Pyqt5,我在PyQt5中遇到了这个错误,我认为只有在使用QTextEdit时才会出现这个错误。我试着用QLineEdit代替QTextEdit,它毫无问题地工作了。当我打开程序时,使用QTextEdit会出现错误,程序运行非常慢。错误:(python:4843):Gtk关键**:IA_ugtk_widget_style_get:assertion'Gtk_IS_widget(widget)'失败 import sys from PyQt5.QtWidgets import (QWidget, QLabe

我在PyQt5中遇到了这个错误,我认为只有在使用QTextEdit时才会出现这个错误。我试着用QLineEdit代替QTextEdit,它毫无问题地工作了。当我打开程序时,使用QTextEdit会出现错误,程序运行非常慢。错误:
(python:4843):Gtk关键**:IA_ugtk_widget_style_get:assertion'Gtk_IS_widget(widget)'失败

import sys
from PyQt5.QtWidgets import (QWidget, QLabel, QLineEdit, 
    QTextEdit, QGridLayout, QApplication)


class Example(QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()


    def initUI(self):

        title = QLabel('Title')
        author = QLabel('Author')
        review = QLabel('Review')

        titleEdit = QLineEdit()
        authorEdit = QLineEdit()
        reviewEdit = QTextEdit()

        grid = QGridLayout()
        grid.setSpacing(10)

        grid.addWidget(title, 1, 0)
        grid.addWidget(titleEdit, 1, 1)

        grid.addWidget(author, 2, 0)
        grid.addWidget(authorEdit, 2, 1)

        grid.addWidget(review, 3, 0)
        grid.addWidget(reviewEdit, 3, 1, 5, 1)

        self.setLayout(grid) 

        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('Review')   
        self.show()


if __name__ == '__main__':

    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

我找到了解决这个问题的办法。更改应用程序的样式 没有显示错误,一切正常

更正代码:

if __name__ == '__main__':

    app = QApplication(sys.argv)
    app.setStyle("fusion") #Changing the style
    ex = Example()
    sys.exit(app.exec_())

这里有更多关于样式的信息:

我从ipython3运行非常简单的PyQt4测试应用程序时,得到了大量的Gtk CRITICAL,它在独立的python3下运行良好,没有错误。添加app.setStyle(“fusion”)也删除了ipython3下的所有这些错误。谢谢你的提示。