GtkDialog отображается без временного родителя
У меня есть графический интерфейс, встроенный в Glade (3.18), который вызывается программой Python 3 (с использованием PyGObject). Я получаю много предупреждений при запуске программы (Fedora 21), которые говорят:
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Как я могу исправить это предупреждение? Я попытался заполнить поле Transient for: main_window
в Glade для всех диалоговых окон, но предупреждения все еще появляются.
Ответы
Ответ 1
Вы устанавливаете это предупреждение, предоставляя GtkDialog родительскому модулю. Соответствующими функциями являются gtk_window_set_transient_for()
(который устанавливает это окно всегда поверх или переходный для другого) и необязательно gtk_window_set_modal()
, чтобы сделать его модальным диалогом. Это, в конечном счете, то, что делают различные конструкторы GtkDialog.