Tk - Mega Widgets

I mega widget includono molti widget complessi che sono spesso richiesti in alcune applicazioni Tk su larga scala. L'elenco dei mega widget disponibili è mostrato di seguito:

Sr.No. Widget e descrizione
1 Dialogo

Widget per la visualizzazione delle finestre di dialogo.

2 Spinbox

Widget che consente agli utenti di scegliere i numeri.

3 Combo box

Widget che combina una voce con un elenco di scelte disponibili per l'uso.

4 Taccuino

Widget a schede che aiuta a passare da una pagina all'altra, utilizzando una scheda indice.

5 Barra di avanzamento

Widget per fornire un feedback visivo sullo stato di avanzamento di una lunga operazione come il caricamento di file.

6 Visualizzazione ad albero

Widget per visualizzare e consentire la navigazione attraverso una gerarchia di elementi più sotto forma di albero.

7 Barra di scorrimento

Scorrimento di widget senza testo o widget di tela.

8 Scala

Widget di scala per scegliere un valore numerico tramite i cursori.

Di seguito viene mostrato un semplice esempio di Tk utilizzando alcuni mega widget.

#!/usr/bin/wish

ttk::treeview .tree -columns "Creator Year" -displaycolumns "Year Creator" 
.tree heading Creator -text "Creator" -anchor center
.tree heading Year -text "Year" -anchor center
pack .tree
.tree insert {} end -id Languages -text "Languages"
.tree insert Languages end -text C -values [list "Dennis Ritchie" "1990"]
proc scaleMe {mywidget scaleValue} {
   $mywidget configure -length $scaleValue
} 
pack [scale .s2  -from 100.0 -to 200.0 -length 100 -background yellow -borderwidth 5
   -font{Helvetica -18 bold} -foreground red -width 40 -relief ridge -orien horizontal
   -variable a -command "scaleMe .s2" ]
pack [ttk::progressbar .p1 -orient horizontal -length 200 -mode indeterminate -value 90]
pack [ttk::progressbar .p2 -orient horizontal -length 200 -mode determinate -variable a
   -maximum 75 -value 20]

Quando eseguiamo il programma sopra, otterremo il seguente output: