Найти - Пользователи
Полная версия: gdk3 Пропадают элементы
Начало » GUI » gdk3 Пропадают элементы
1 2
Phantom
Здравствуйте.
Программирую на питон 3.5 форму создаю на glade - gdk3 проблема в следующем,
если создать дополнительные окна, первый раз они открываются нормально
со всеми элементами, но если нажать на заголовке кнопку закрыть
следующий раз форма вызывается пустой.
Можно конечно создать свои формы и выставить не показывать кнопку закрыть
на заголовке и добавить свою кнопку hide(), но я думаю это не красивый выход
тем более уверен что проблема решается достаточно просто.
Также прикрепляю файл с проектом набросанным на скорую руку.
Спасибо за внимание С уважением Максим.
py.user.next
Да это похоже на хрень какую-то. Возьми PyQt, там нет таких проблем.
Phantom
py.user.next
Да это похоже на хрень какую-то. Возьми PyQt, там нет таких проблем.
Согласен что нет, но он так же далеко не на всех линуксах стоит , недавно столкнулся с тем что даже в минт Qt интерфейс не запустился То есть если я кому то дам эту программу ему так же надо сказать не забудь установить Qt. А вот с gdk таких проблем нет, так как на нём написано много интерфейсов.
py.user.next
https://ru.wikipedia.org/wiki/PyGTK
GTK+ реализован на языке C и имеет собственную (не интегрированную в полной мере с Python) систему учёта ссылок между GObject-объектами для удаления более не используемых GTK-объектов (то есть для обработки этих объектов системой сборки мусора GObject).
Как следствие этого — не исключены случаи, когда ссылки на Python-объекты (например, ссылки на функции обратного вызова), сохранённые внутри GTK-объектов (то есть GObject-объектах), превращаются в слабые ссылки и могут быть удалены системой сборки мусора Python.
Следствием непредусмотренного программистом превращения ссылок в слабые ссылки могут стать ошибки при выполнении программы, когда, например, вызванная Callback-функция станет оперировать с неинициализированными данными (то есть с данными, очищенными сборщиком мусора Python).
В этом, похоже, проблема. Там что-то само может уничтожаться, поэтому и выглядит, как ошибка неизвестной природы.
Rodegast
> но он так же далеко не на всех линуксах стоит

Он есть во всех репах. По этому не вижу в этом большой проблемы.
Phantom
Rodegast
> но он так же далеко не на всех линуксах стоит Он есть во всех репах. По этому не вижу в этом большой проблемы.
Проблема в том что пользователи не хотят ничего ставить или прописывать им надо из коробки. Говорят скачай программу скачай Qt …. А есть и такие уж поверте мне которые вообще терминала избегают. Не все же такие как мы, правда?
py.user.next
Rodegast
По этому не вижу в этом большой проблемы.
Там лицензирование может различаться. Qt хорош, пока не продаёшь прогу.

Phantom
А есть и такие уж поверте мне которые вообще терминала избегают.
Ну и не пиши для них ничего.
Phantom
py.user.next
https://ru.wikipedia.org/wiki/PyGTK
Да вообще я многого в GTK не понимаю, сделано очень через ……… По мне так должно быть объект = сигнал а там накручено по китайски всё с тем же например TreeView..
Теперь по вопросу, Я думал что кто то знает хитрый метод закрытия окна просто скрыв его. Ведь есть метод который при закрытии формы удаляет её из процессов
[code python]self.Winmy.connect("delete-event", Gtk.main_quit)[/code]
Rodegast
> Там лицензирование может различаться. Qt хорош, пока не продаёшь прогу.

Вот по этому я используюь PySide
FishHook
Phantom
По мне так должно быть объект = сигнал
GTK - это Си библиотека, нет там никаких объектов.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB