PyGTK: есть ли метод для расчета наилучшего размера окна? - PullRequest
0 голосов
/ 06 декабря 2010

Большая часть моего программирования на GUI была выполнена на Java, где вы могли использовать метод .pack (), который бы устанавливал предпочтительный размер окна.Сейчас я изучаю PyGTK и задаюсь вопросом, существует ли такая вещь в нем.

Ответы [ 2 ]

1 голос
/ 06 декабря 2010

Вам не нужен метод упаковки. если вы не установите размер, окно будет соответствовать минимальному размеру. Вы можете использовать window.set_size_request (-1, -1), чтобы сбросить любой предыдущий размер.

0 голосов
/ 06 декабря 2010

К сожалению ... не то, что я знаю. Я использую следующую уловку, которая использует различные методы GTK и GDK, чтобы определить размер экрана текущего монитора при запуске приложения и изменяет размеры корневого окна, чтобы иметь определенную долю заполнения.

Обратите внимание, что root является GtkWindow. Конечно, вы можете иметь два значения для SCREEN_FILL для горизонтальной и вертикальной заливки.

SCREEN_FILL = 0.7

class MainApp(object):

    def set_initial_size(self):        
        screen = self.root.get_screen()
        monitor = screen.get_monitor_at_window(self.root.get_window())
        geom = screen.get_monitor_geometry(monitor)
        self.root.set_resize_mode(gtk.RESIZE_QUEUE)
        self.root.resize(
                         int(geom.width * SCREEN_FILL),
                         int(geom.height * SCREEN_FILL))
...