0
我有一個程序,只需創建一個GtkDialog,然後調用gtk_widget_show_all就可以了。在實踐中,GTKDialog充當程序的「主窗口」。如果我的對話框是最上面的窗口,我該如何解決「沒有臨時父項映射的GtkDialog」警告?
一切似乎工作正常,但我從GTK說'GtkDialog映射沒有臨時父母警告。 「我該如何解決這個問題?我需要創建一個隱形窗口作爲我的對話框的父窗口嗎?
我有一個程序,只需創建一個GtkDialog,然後調用gtk_widget_show_all就可以了。在實踐中,GTKDialog充當程序的「主窗口」。如果我的對話框是最上面的窗口,我該如何解決「沒有臨時父項映射的GtkDialog」警告?
一切似乎工作正常,但我從GTK說'GtkDialog映射沒有臨時父母警告。 「我該如何解決這個問題?我需要創建一個隱形窗口作爲我的對話框的父窗口嗎?
那麼問題在於你使用GtkDialog而不是GtkWindow。這是一個奇怪的設計選擇,使對話框的主窗口。
此程序是一個庫的演示的一部分,所以我認爲它只是展示如何以最簡單的方式創建對話框無論如何,假設我想編寫一個程序,只需要詢問用戶輸入一個對話框,除了對話框之外,我不想看到任何其他可見的窗口,我是否還應該構造我的程序,以便對話框是主窗口還是有一些其他方式? – hugomg
在這種情況下,您應該使用GtkWindow而不是GtkDialog。您可以使用bui用同樣的方式使用你的用戶界面 - 畢竟,一個GtkDialog是一個帶有一個框的GtkWindow,用於放置內容和控件的按鈕框。問題在於GtkDialog向窗口系統提示它已連接到另一個窗口;沒有,你打破了課堂的語義。 – ebassi