Модификация GUI началась с Glade
Вопрос
Я только начинаю изучать Glade с помощью pyGTK. Так как Glade создает XML-файлы вместо реального кода на Python, есть ли хороший способ начать проект с Glade, а затем вручную написать код или настроить его? Р>
Есть ли моменты или причины, по которым было бы предпочтительнее написать все это вместо того, чтобы начинать с поляны?
Решение
GUI, созданные с помощью glade, доступны в коде двумя способами: libglade или gtkbuilder. Я не могу много комментировать различия между ними, кроме того, что gtkbuilder новее; В Google есть много страниц, на которых показано, как перейти с libglade на gtkbuilder.
Используя gtkbuilder, вы можете создать свой объект GUI, извлекая его из файла XML с помощью gtkbuilder. Это создаст объект со всеми настройками, которые вы установили на поляне. Теперь у вас есть GUI-объект, которым вы можете манипулировать через его обычный интерфейс.
builder = gtk.Builder()
builder.add_from_file(glade_path)
builder.connect_signals(self)
main_window = builder.get_object("main_window")
main_window.show()
text_box1 = builder.get_object("textbox1")
text_box1.set_text("enter your name")
В строке 3 показано, как подключаются обработчики сигналов при загрузке с поляны. По сути, он ищет функцию, указанную для сигнала в интерфейсе поляны и присоединенную к ней; если функция не предоставлена, вы увидите предупреждение в командной строке.
Другие советы
Как много вы знаете о поляне и пигтках? Glade создает XML-файлы, но вы загружаете их, используя gtk.Builder в python. Вы можете легко настроить любые виджеты, которые вы создали с помощью glade в python. Прочитайте эти учебные пособия , чтобы понять, как это сделать лучше. Вам просто нужно больше узнать о pygtk и поляне, и это будет очевидно.