2010-12-06 3 views

Répondre

0

Malheureusement ... pas que je sache. J'utilise l'astuce suivante qui utilise une variété de méthodes GTK et GDK pour calculer la taille de l'écran du moniteur actuel au démarrage de l'application et redimensionne la fenêtre racine pour avoir une certaine proportion de remplissage.

Notez que root est un GtkWindow. Vous pouvez, bien sûr, avoir deux valeurs pour SCREEN_FILL pour le remplissage horizontal et vertical.

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)) 
1

Vous n'avez pas besoin d'une méthode pack. Si vous ne définissez pas de taille, la fenêtre s'ajustera à sa taille minimum. Vous pouvez utiliser window.set_size_request (-1, -1) pour annuler la taille précédente.

Questions connexes