Tk - Mega Widget'lar

Mega pencere öğeleri, bazı büyük ölçekli Tk uygulamalarında genellikle gerekli olan birçok karmaşık pencere öğesi içerir. Mevcut mega widget'ların listesi aşağıda gösterildiği gibidir -

Sr.No. Widget ve Açıklama
1 Diyalog

İletişim kutularını görüntülemek için widget.

2 Eğirme kutusu

Kullanıcıların sayı seçmesine izin veren widget.

3 Açılan kutu

Kullanılabilecek seçenekler listesi ile bir girişi birleştiren widget.

4 Not defteri

Bir dizin sekmesi kullanarak birkaç sayfadan biri arasında geçiş yapmaya yardımcı olan sekmeli widget.

5 İlerleme çubuğu

Dosya yükleme gibi uzun bir işlemin ilerleyişine görsel geri bildirim sağlamak için widget.

6 Ağaç görünümü

Widget öğelerin bir hiyerarşisinde daha çok ağaç biçiminde görüntülenmesine ve taranmasına izin verir.

7 Kaydırma çubuğu

Metin veya tuval widget'ları olmadan widget'ları kaydırma.

8 Ölçek

Kaydırıcılar aracılığıyla sayısal bir değer seçmek için widget'ı ölçekleyin.

Aşağıda bazı mega widget'lar kullanılarak basit bir Tk örneği gösterilmektedir.

#!/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]

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı alacağız -