Tk - Tổng quan về widget

Thành phần cơ bản của ứng dụng dựa trên Tk được gọi là widget. Một thành phần đôi khi cũng được gọi là cửa sổ, vì trong Tk, "cửa sổ" và "tiện ích con" thường được sử dụng thay thế cho nhau. Tk là một gói cung cấp một tập hợp các thành phần đồ họa phong phú để tạo các ứng dụng đồ họa với Tcl.

Tk cung cấp một loạt các widget khác nhau, từ các widget GUI cơ bản như các nút và menu đến các widget hiển thị dữ liệu. Các widget rất dễ cấu hình vì chúng có cấu hình mặc định nên dễ sử dụng.

Các ứng dụng Tk tuân theo một hệ thống phân cấp tiện ích trong đó bất kỳ số lượng tiện ích nào có thể được đặt trong một tiện ích con khác và những tiện ích con đó trong một tiện ích con khác. Tiện ích chính trong chương trình Tk được gọi là tiện ích gốc và có thể được tạo bằng cách tạo một phiên bản mới của lớp TkRoot.

Tạo một Widget

Cú pháp để tạo một widget được đưa ra dưới đây.

type variableName arguments options

Loại ở đây đề cập đến loại tiện ích con như nút, nhãn, v.v. Các đối số có thể là tùy chọn và bắt buộc dựa trên cú pháp riêng của từng tiện ích con. Các tùy chọn bao gồm từ kích thước đến định dạng của từng thành phần.

Quy ước đặt tên tiện ích con

Widget sử dụng một cấu trúc tương tự như đặt tên cho các gói. Trong Tk, cửa sổ gốc được đặt tên bằng dấu chấm (.) Và một phần tử trong cửa sổ, ví dụ nút có tên .myButton1. Tên biến phải bắt đầu bằng chữ cái viết thường, chữ số hoặc dấu chấm câu (ngoại trừ dấu chấm). Sau ký tự đầu tiên, các ký tự khác có thể là chữ hoa hoặc chữ thường, số hoặc dấu chấm câu (trừ dấu chấm). Bạn nên sử dụng một ký tự viết thường để bắt đầu nhãn.

Quy ước đặt tên màu

Các màu có thể được khai báo bằng tên như đỏ, xanh lá cây, v.v. Nó cũng có thể sử dụng hệ thập lục phân biểu diễn bằng #. Số lượng chữ số thập lục phân có thể là 3, 6, 9 hoặc 12.

Quy ước về thứ nguyên

Đơn vị mặc định là pixel và nó được sử dụng khi chúng tôi chỉ định không có thứ nguyên. Các kích thước khác là i cho inch, m cho milimét, c cho cm và p cho điểm.

Các tùy chọn chung

Có rất nhiều tùy chọn phổ biến có sẵn cho tất cả các tiện ích con và chúng được liệt kê bên dưới trong bảng sau:

Sr.No. Cú pháp & Mô tả
1

-background color

Dùng để đặt màu nền cho widget.

2

-borderwidth width

Được sử dụng để vẽ với đường viền trong hiệu ứng 3D.

3

-font fontDescriptor

Dùng để đặt phông chữ cho widget.

4

-foreground color

Dùng để đặt màu nền trước cho widget.

5

-height number

Dùng để đặt chiều cao cho widget.

6

-highlightbackground color

Được sử dụng để đặt hình chữ nhật màu để vẽ xung quanh tiện ích con khi tiện ích con không có tiêu điểm đầu vào.

7

-highlightcolor color

Được sử dụng để đặt hình chữ nhật màu để vẽ xung quanh tiện ích khi tiện ích có tiêu điểm đầu vào.

số 8

-padx number

Đặt padx cho tiện ích con.

9

-pady number

Đặt pady cho widget.

10

-relief condition

Đặt phù điêu 3D cho tiện ích này. Tình trạng có thể nổi lên, trũng xuống, phẳng, có rãnh, đặc hoặc rãnh.

11

-text text

Đặt văn bản cho tiện ích con.

12

-textvariable varName

Biến được liên kết với tiện ích con. Khi văn bản của tiện ích con thay đổi, biến được đặt bằng văn bản của tiện ích con.

13

-width number

Đặt chiều rộng cho tiện ích con.

Một ví dụ đơn giản cho các tùy chọn được hiển thị bên dưới.

#!/usr/bin/wish

grid [label .myLabel -background red -text "Hello World" -relief ridge -borderwidth 3]
   -padx 100 -pady 100

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

Danh sách các vật dụng có sẵn được phân loại dưới đây:

Các vật dụng cơ bản

Sr.No. Widget & Mô tả
1

Label

Tiện ích để hiển thị một dòng văn bản.

2

Button

Tiện ích con có thể nhấp và kích hoạt một hành động.

3

Entry

Widget được sử dụng để chấp nhận một dòng văn bản làm đầu vào.

4

Message

Tiện ích để hiển thị nhiều dòng văn bản.

5

Text

Widget để hiển thị và tùy chọn chỉnh sửa nhiều dòng văn bản.

6

Toplevel

Cửa sổ với tất cả các đường viền và trang trí được cung cấp bởi trình quản lý Cửa sổ.

Bố cục Widget

Sr.No. Widget & Mô tả
1

Frame

Container widget để chứa các widget khác.

2

Place

Widget để giữ các widget khác ở một vị trí cụ thể với tọa độ gốc và kích thước chính xác.

3

Pack

Widget đơn giản để tổ chức widget theo khối trước khi đặt chúng vào widget mẹ.

4

Grid

Widget để lồng đóng gói widget theo các hướng khác nhau.

Công cụ lựa chọn

Sr.No. Widget & Mô tả
1

Radiobutton

Tiện ích có một tập hợp các nút và nhãn bật / tắt, một trong số đó có thể được chọn.

2

Checkbutton

Tiện ích có một tập hợp các nút và nhãn bật / tắt, nhiều trong số đó có thể được chọn ..

3

Menu

Widget hoạt động như một ngăn chứa các mục menu.

4

Listbox

Widget hiển thị danh sách các ô, một hoặc nhiều ô có thể được chọn.

Mega Widgets

Sr.No. Widget & Mô tả
1

Dialog

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

2

Spinbox

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

3

Combobox

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

Notebook

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

Progressbar

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

Scrollbar

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

số 8

Scale

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

Các tiện ích khác

Sr.No. Widget & Mô tả
1

Canvas

Tiện ích vẽ để hiển thị đồ họa và hình ảnh ..

Chúng tôi sẽ đề cập đến từng widget này trong các chương sắp tới.