Сделайте новый экземпляр главного окна, Python GTK

Я довольно новичок в python и gtk, и я пишу приложение для Ubuntu App Showdown, используя Quickly. Я хочу создать новый экземпляр главного окна, когда пользователь нажимает «Новый».

У меня есть кнопка и пункт меню, связанные, то есть я могу сделать так, чтобы при нажатии на них они печатались как «новые» для командной строки. Однако я искал и не могу найти, как сделать новый экземпляр.

2
задан 24 June 2012 в 16:07

2 ответа

Если вы хотите запустить новое окно вашего приложения в том же процессе, вы можете просто создать новый экземпляр класса окна, который был быстро создан для вас.

Мое приложение называется быстро-gtk, и в модуле python ./quickly_gtk/init.py У меня есть следующие строки (внизу файла):

# Run the application.    
window = QuicklyGtkWindow.QuicklyGtkWindow()
window.show()
[ 114] Если вы вызовете это снова, он запустит новый экземпляр вашего основного окна. Тем не менее, код, который создает Quickly, действительно предназначен для запуска одного экземпляра этого окна за раз, поэтому у вас будут некоторые побочные эффекты, которые вам понадобятся для кодирования.

Например, быстро соединяет событие закрытия окна с обратным вызовом, который завершает весь ваш процесс. Если у вас есть несколько окон, вам нужно переопределить метод on_destroy() вашего окна. Вероятно, будут другие проблемы, с которыми вы столкнетесь при этом.

0
ответ дан 24 June 2012 в 16:07

Вы создаете новое окно, создав объект окна и затем показав его. Вот пример кода:

window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.show()

Однако могут также помочь полезные ресурсы, такие как PyGTK ссылка: http://developer.gnome.org/pygtk/stable/

Также есть еще несколько учебных пособий по адресу: http://pygtk.org/pygtk2tutorial /

0
ответ дан 24 June 2012 в 16:07

Другие вопросы по тегам:

Похожие вопросы: