我是编程新手。我正在创建一个Qt GUI应用程序。这是一个小的单词拼写游戏。问题是每当我从命令提示符启动这个程序,在构建它之后,我在命令提示符上得到以下输出:
JumbleGame 1.0
Launching Application.....
QVariantMap DBusMenuExporterDBus::GetProperties(int, const QStringList&): Condition failed: action上面两行可以,我打印了它们,但是什么是QVariantMap DBusMenuExporterDBus::GetProperties(int,const QStringList&):条件失败:操作
在启动应用程序后,它工作得很好,但当我关闭它时,我在命令提示符上得到以下输出:
(`<unknown>`:7312): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GObject'
(`<unknown>`:7312): GLib-GObject-CRITICAL **: g_object_get_data: assertion `G_IS_OBJECT (object)' failed所有这些错误的含义以及如何删除它们。我的代码完全是用qt c++编写的。
提前谢谢。
发布于 2012-11-27 02:30:41
这听起来像是你创建了一个菜单,你添加了没有动作的菜单项,或者你的动作不再存在。
DBus是一种在具有windows端口的Posix体系结构中使用的消息传递系统。QVariantMap可能与Qt如何在内部管理您放在一起的一些图形用户界面元素有关。
因此,很有可能您在构造函数中的堆栈上创建了一些GUI元素,当您离开构造函数时,这些元素会超出作用域,并且您的GUI现在有一堆错误的指针。
因此,要解决这个问题,请确保根据Qt Object Model在堆上有Qt元素/小部件/objects。
希望这能有所帮助。
https://stackoverflow.com/questions/5604983
复制相似问题