[ruby-gnome2-doc-cvs] [Hiki] create - tut-gtk2-packing-box-details

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2004年 1月 8日 (木) 05:17:57 JST


-------------------------
REMOTE_ADDR = 81.211.254.88
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/it?tut-gtk2-packing-box-details
-------------------------
= Riquadri in dettaglio


Proprio per la flessibilit impacchettare i riquadri in GTK puessere inizialmente confusionario; ci sono tante opzioni che non sono ovvie, infine ci sono principalmente cinque stili differenti.


{{image_left("helloworld.png")}}{{br}}


Ogni linea contiene un riquadro orizzontale (hbox) con diversi pulsanti. La chiamata di Gtk::Box#pack una scorciatoia per la chiamata di impacchettamento per ogni pulsante dentro l'hbox. Ogni pulsante impacchetato dentro l'hbox nello stesso modo (es. stessi argomenti al metodo Gtk::Box#pack_start).


Il metodo Gtk::Box#pack_start assomiglia a questo:



  Gtk::Box#pack_start(figlio, espansione, riempimento, spaziatura)

Il primo argomento l'oggetto che stai impacchettando dentro il riquadro. Gli oggetti saranno tutti pulsanti per adesso, cosimpacchetteremo i pulsanti dentro i riquadri.

L'argomento di espansione ai controlli Gtk::Box#pack_start e Gtk::Box#pack_end dei widget che sono situati nel riquadro:



:se espansione vero

 I widget occuperanno tutto lo spazio del riquadro cosil riquadro automaticamente si espanderfino a riempire l'intera area;


:se espansione falso

 il riquadro ristretto alla dimensione del widget.

Impostando l'espansione a falso permetterla giustificazione dei widget da destra a sinistra. Altrimenti, tutti 
si espanderanno fino a riempire il riquadro e lo stesso effetto puessere ottenuto usando solo un Gtk::Box#pack_start o Gtk::Box#pack_end.

 
L'argomento riempimento controlla dove lo spazio dato all'oggetto dall'opzione espansione allocata:


:se riempimento vero
 l'oggetto esteso fino a riempire lo spazio allocato;

:se riempimento falso
 l'oggetto lasciato con le sue dimensioni originali ed viene aggiunta una spaziatura attorno.


Nota che l'argomento riempimento ha effetto solo se l'argomento espansione anche vero.

Quando creando un nuovo riquadro orizzontale, sembra come questo:



  Gtk::HBox.new(omogeneo, imbottitura) 


L'argomento omogeneo di Gtk::HBox.new (e lo stesso per Gtk::VBox.new) controlla se ogni oggetto nel riquadro ha la stessa dimensione (es. la stessa larghezza in un hbox o la stessa altezza in un vbox). Se impostata, i metodi Gtk::Box#pack_start o Gtk::Box#pack_end funzionano essenzialmente come se l'argomento espansione era impostato a vero.

Qual'la differenza tra spaziatura (impostata quando il riquadro creato) e l'imbottitura (impostata quando gli elementi sono impacchettati)?
La spaziatura aggiunta tra gli oggetti e l'imbottitura aggiunta su ogni lato di un oggeto. La seguente schermata dovrebbe chiarirlo:



{{image_left("packbox2.png")}}{{br}}


Proseguendo, il codice usato per creare la schermata sopra; molto commentato cosspero che non avrai
nessun problema a proseguire. Provalo.







ruby-gnome2-cvs メーリングリストの案内
Back to archive index