К сожалению ... не то, что я знаю. Я использую следующую уловку, которая использует различные методы 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))