Tk - Mega Widgets

Mega widget bao gồm nhiều widget phức tạp thường được yêu cầu trong một số ứng dụng Tk quy mô lớn. Danh sách các tiện ích lớn có sẵn như được hiển thị bên dưới -

Sr.No. Widget & Mô tả
1 Hộp thoại

Widget để hiển thị hộp thoại.

2 Hộp xoay

Widget cho phép người dùng chọn số.

3 Hộp tổ hợp

Tiện ích kết hợp mục nhập với danh sách các lựa chọn có sẵn để sử dụng.

4 Sổ tay

Tiện ích con theo tab giúp chuyển đổi giữa một trong một số trang bằng cách sử dụng tab chỉ mục.

5 Thanh tiến trình

Widget để cung cấp phản hồi trực quan về tiến trình của một hoạt động dài như tải tệp lên.

6 Treeview

Widget để hiển thị và cho phép duyệt qua một hệ thống phân cấp các mục hơn ở dạng cây.

7 Thanh cuộn

Các widget cuộn không có văn bản hoặc widget canvas.

số 8 Tỉ lệ

Mở rộng widget để chọn một giá trị số thông qua các thanh trượt.

Dưới đây là một ví dụ Tk đơn giản bằng cách sử dụng một số tiện ích lớn.

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

Khi chúng ta chạy chương trình trên, chúng ta sẽ nhận được kết quả sau: