Gtk-CRITICAL**:IA__gtk_widget_style_get:断言`GTK_IS_WIDGET(widget)'失败

Oum*_*aya 4 gtk ubuntu qt build widget

在我的qt应用程序的静态构建之后

./configure -static -debug-and-release  -confirm-license -nomake demos -nomake examples -nomake tools 
Run Code Online (Sandbox Code Playgroud)

它工作正常,但我得到几个输出消息大喊:

(MyApplication:32030): Gtk-CRITICAL **: IA__gtk_widget_style_get: assertion `GTK_IS_WIDGET (widget)' failed
Run Code Online (Sandbox Code Playgroud)

是否真的存在严重问题,我应该用不同的选项重建qt吗?

任何帮助将不胜感激.

Joe*_*oel 11

这有点晚了,但希望它能节省一些时间.

对我来说,错误是由两件事的结合引起的:QCleanlooksStyleQTableWidget.在ubuntu上,默认样式是QCleanlooksStyle或者QGtkStyle(继承自QCleanlooksStyle).当a QTableWidget用这些样式中的任何一种绘制时,我看到了那个错误.我的解决方案是这样的:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    a.setStyle(new QPlastiqueStyle());

    MainWindow w;
    w.show();

    return a.exec();
}
Run Code Online (Sandbox Code Playgroud)