2011-04-09 74 views
3

我是編程新手。我正在創建一個Qt GUI應用程序。這是一個小詞混雜的遊戲。 問題是,每當我建設我得到它下面的命令提示符下輸出之後,從命令提示符下啓動該程序:QVariantMap DBusMenuExporterDBus GLib-GObject-CRITICAL GLib-GObject-警告

JumbleGame 1.0 

Launching Application..... 

QVariantMap DBusMenuExporterDBus::GetProperties(int, const QStringList&): Condition failed: action 

上兩條線都OK,我打印了出來,但什麼是QVariantMap DBusMenuExporterDBus :: GetProperties中(INT,常量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 

什麼都THES e錯誤意味着什麼,我該如何刪除它們。 我的代碼完全在qt C++

在此先感謝。

回答

0

這聽起來像你創建一個菜單,你添加菜單項沒有行動或你的行動不再存在。

DBus是Posix體系結構中使用的一種具有Windows端口的消息傳遞系統。 QVariantMap可能與Qt內部管理一些你放在一起的GUI元素有關。

所以很有可能你在構造函數的堆棧中創建了一些GUI元素,當你離開你的構造函數時,那些元素超出了範圍,並且你的GUI現在有一堆壞指針。

所以要解決這個問題,請確保根據Qt Object Model在堆上有Qt元素/小部件/ objects

希望有所幫助。