Strumenti Utente

Strumenti Sito


pygtk:resizing

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
pygtk:resizing [2009/01/14 09:10] – precisatio pietropygtk:resizing [2009/01/14 09:20] (versione attuale) – set_size_request pietro
Linea 32: Linea 32:
           window.set_data('configure handler', new_handler)           window.set_data('configure handler', new_handler)
      
-  def set_width(window, width): +  def get_width(window): 
-      ensure_configure_handler(window)+      width = window.get_data('real width'
 +      if not width: 
 +          width = window.get_size()[0] 
 +      return width
      
-      window.set_data('real width', width)+  def get_height(window):
       height = window.get_data('real height')       height = window.get_data('real height')
       if not height:       if not height:
           height = window.get_size()[1]           height = window.get_size()[1]
-        +      return height 
 +   
 +  def set_width(window, width): 
 +      ensure_configure_handler(window) 
 +   
 +      window.set_data('real width', width) 
 +      height = get_height(window)        
       window.resize(width, height)       window.resize(width, height)
          
Linea 46: Linea 55:
      
       window.set_data('real height', height)       window.set_data('real height', height)
-      width = window.get_data('real width'+      width = get_width(window)        
-      if not width: +
-          width = window.get_size()[0] +
-        +
       window.resize(width, height)       window.resize(width, height)
 +
 +==== set_size_request ====
 +Notice that set_size_request has a similar problem: if a gtk.Widget **widget**'s get_size_request gives (-1,-1) and I run the following code:
 +  widget.set_size_request(100,100)
 +  widget.set_size_request(-1, -1)
 +
 +, it won't expand at all, nothing will happen. This is an issue if you wanted to use this as a hack to resize the widget but let to the user the possibility to shrink it again; an hackish way to solve this is instead the following code:
 +  widget.set_size_request(100,100)
 +  gobject.idle_add(widget.set_size_request, -1, -1)
  
 ====== gtk.ScrolledWindow ====== ====== gtk.ScrolledWindow ======
pygtk/resizing.1231920640.txt.gz · Ultima modifica: 2009/01/14 09:10 da pietro