« Tk: comando packAppunti di Tcl/TkTk: comando wm »

Tk

opzioni standard dei widget

Tk permette di specificare o interrogare i parametri e le preferenze associate a ciascun widget (colori, dimensioni, font, ecc.). Tutte queste opzioni vengono mantenute da Tk in un database, interrogabile e modificabile sia tramite procedure C che Tcl. Le opzioni standard di configurazione supportate dai widget sono spiegate nella manpage options(n), in modo da non dover ripetere la spiegazione nelle manpage relative a ciascun widget. Non tutte le opzioni generiche sono supportate da tutti i widget. Ogni widget supporta un sottoinsieme di opzioni standard che viene indicato nella sezione STANDARD OPTIONS della sua manpage.

Qui elenco le opzioni generali più usate. Per un elenco esaustivo consultate options(n):

-foreground o -fg
Indica il colore di sfondo da usare normalmente quando viene visualizzato il widget. Per la lista dei nomi simbolici dei colori riconosciuti da Tk, insieme ai codici RGB ad 8-bit equivalenti consultate colors(n).
-background o -bg
Specifica il colore di sfondo normalmente usato per visualizzare il widget.
-text
Specifica la stringa da visualizzare all'interno del widget. Il modo in cui verrà visualizzata la stringa dipende dal particolare widget e può essere determinata da altre opzioni.
-relief

Specifica l'effetto 3-D da applicare al widget. Accetta i seguenti valori (qui esemplificati con un button o una label):

button label
  • raised button

  • sunken button

  • flat button

  • ridge button

  • solid button

  • groove button

  • raised label

  • sunken label

  • flat label

  • ridge label

  • solid label

  • groove label

-font
Indica il font da usare per il testo all'interno di un widget. Il valore può essere una qualsiasi stringa valida come specificatore di font. Vedere il comando font(n) per i dettagli.
label .l1 -text "utopia 18 punti" -font "utopia 18"
label .l2 -text "helvetica 24 pixel italic" -font "Helvetica -24 italic"
pack .l1 .l2
alcuni esempi di font
-orient
Indica l'orientazione scelta tra horizontal e o vertical (o una abbreviazione di questi nomi) per i widget che possono essere disposti sia in orizzontale che in verticale, come le scrollbar.
-image

Specifica una immagine da visualizzare nel widget, che deve essere stata precedentemente creata tramite il comando image create. Di solito, se viene specificata questa opzione vengono ignorate altre opzioni che specificano una bitmap o un valore testuale da visualizzare all'interno del widget e verrà visualizzata solo l'immagine specificata con -image; se però il valore di questa opzione viene reimpostato in una stringa vuota, verrà visualizzata la bitmap o il testo come stabilito dalle opzioni -text e -bitmap.

Per esempio ho creato questa immagine di un bottone smussato usando gli script di gimp(1); sempre tramite gimp(1) ho fuso i layer e l'ho convertita in formato indicizzato con 255 colori; infine l'ho salvata in formato GIF, in un file che ho chiamato gimpbutton.gif:

un bottone creato con The Gimp

Ora con questo codice posso creare un bottone che abbia la forma di questa immagine:

image create photo butimg -file gimpbutton.gif
button .but -borderwidth 0 -highlightthickness 0 -image butimg

Si può semplificare il codice lasciando che sia Tk ad assegnare un nome unico del tipo imagex (x è un intero) all'immagine creata e innestando i comandi button(n) e image(n):

button .but -borderwidth 0 -highlightthickness 0 -image [image create photo -file gimpbutton.gif]
-bitmap
Specifica una bitmap da visualizzare nel widget. Le bitmap si possono specificare in due modi, come spiegato in Tk_GetBitmap(3). Se questa opzione non è la stringa vuota, fa sì che -text venga ignorata. Nei widget che supportano sia le immagini che le bitmap, -image ha maggior precedenza rispetto a -bitmap.

Le bitmap sono immagini monocromatiche molto semplici, in cui ogni pixel può essere di soli due colori (quello di primo piano o di sfondo), oppure niente (vale a dire che il pixel è trasparente). Vedere bitmap(n) per maggiori informazioni. Il comando bitmap(1) incluso nel sistema grafico X permette di creare i file di bitmap nel formato X11 (di fatto si tratta di un formato testuale portabile: è una definizione in linguaggio C di un array di caratteri statico!). Trovate alcune bitmap in /usr/X11R6/include/X11/bitmaps (per lo meno in FreeBSD).

-padx

Specifica un valore non negativo che indica quanto spazio extra richiedere per il widget nella direzione X. I valori vanno specificati come numero a virgola mobile, seguito da uno dei caratteri seguenti che indica l'unità di misura:

abbreviazione unità di misura
<nessuno> pixel
c centimetri
i pollici (inches)
m millimetri
p punti (1/72 di pollice)

Quando il geometry manager calcola quando spazio in larghezza deve essere assegnato al widget, aggiunge questa quantità alla larghezza che sarebbe necessaria in mancanza dell'opzione -padx (che viene determinata in base alla larghezza di quello che è visualizzato nel widget) e, ammesso che il geometry manager sia in grado di soddisfare la richiesta, il widget avrà dello spazio extra a sinistra e/o a destra del suo contenuto. Nella maggior parte dei widget questa opzione ha effetto solo se c'è del testo contenuto e viene di solito ignorata per le bitmap o le immagini.

-pady
Del tutto analoga a -padx, solo che richiede dello spazio extra di riempimento verticalmente anziché orizzontalmente.
-xscrollcommand
Specifica il prefisso di un comando usato per comunicare cambiamenti di vista o di dimensione del documento alle scrollbar orizzontali, che possono così aggiornarsi per adeguarsi a questi cambiamenti. Al comando specificato vengono aggiunti due parametri, che sono delle frazioni tra 0 e 1 che indicano la frazione visibile del documento. Tipicamente il comando è formato dal pathname di un widget di tipo scrollbar(n) seguito dal sottocomando set. Per un esempio vedere il comando scrollbar.
-yscrollcommand
Del tutto simile a -xscrollcommand, ma usato per comunicare con le scrollbar verticali anziché orizzontali.

« Tk: comando packAppunti di Tcl/TkTk: comando wm »