Cách tạo hộp bằng Python
Các ứng dụng máy tính hiện đại thân thiện với người dùng. Tương tác người dùng không bị hạn chế đối với I/O dựa trên bảng điều khiển. Chúng có giao diện người dùng đồ họa (GUI) tiện dụng hơn nhờ bộ xử lý tốc độ cao và phần cứng đồ họa mạnh mẽ. Các ứng dụng này có thể nhận đầu vào thông qua các lần nhấp chuột và có thể cho phép người dùng chọn từ các lựa chọn thay thế với sự trợ giúp của các nút radio, danh sách thả xuống và các thành phần GUI (hoặc tiện ích con) khác. Các ứng dụng như vậy được phát triển bằng cách sử dụng một trong các thư viện đồ họa khác nhau có sẵn. Thư viện đồ họa là bộ công cụ phần mềm có tập hợp các lớp xác định chức năng của các phần tử GUI khác nhau. Các thư viện đồ họa này thường được viết bằng C/C++. Nhiều trong số chúng đã được chuyển sang Python dưới dạng các mô-đun có thể nhập được. Một số trong số họ được liệt kê dưới đây Tkinter là cổng Python cho bộ công cụ Tcl-Tk GUI được phát triển bởi Fredrik Lundh. Mô-đun này đi kèm với các bản phân phối tiêu chuẩn của Python cho tất cả các nền tảng PyQtis, giao diện Python cho Qt, là một khung GUI đa nền tảng rất phổ biến PyGTK là mô-đun chuyển Python sang một bộ công cụ tiện ích GUI phổ biến khác có tên là GTK WxPython là một trình bao bọc Python xung quanh WxWidgets, một thư viện đồ họa đa nền tảng khác Hướng dẫn này giải thích việc sử dụng Tkinter trong việc phát triển các chương trình Python dựa trên GUI Ứng dụng GUI cơ bảnCác phần tử GUI và chức năng của chúng được xác định trong mô-đun Tkinter. Đoạn mã sau trình bày các bước tạo giao diện người dùng
Trước hết, nhập mô-đun TKinter. Sau khi nhập, hãy thiết lập đối tượng ứng dụng bằng cách gọi hàm 1. Thao tác này sẽ tạo một cửa sổ cấp cao nhất (gốc) có khung với thanh tiêu đề, hộp điều khiển với các nút thu nhỏ và đóng cũng như khu vực máy khách để chứa các vật dụng khác. Phương thức 2 xác định chiều rộng, chiều cao và tọa độ của góc trên cùng bên trái của khung như bên dưới (tất cả các giá trị tính bằng pixel). 0 Đối tượng ứng dụng sau đó đi vào vòng lặp lắng nghe sự kiện bằng cách gọi phương thức 1. Ứng dụng hiện đang liên tục chờ đợi bất kỳ sự kiện nào được tạo trên các phần tử trong đó. Sự kiện có thể là văn bản được nhập vào trường văn bản, lựa chọn được thực hiện từ menu thả xuống hoặc nút radio, hành động nhấp chuột đơn/đôi, v.v. Chức năng của ứng dụng liên quan đến việc thực thi các chức năng gọi lại thích hợp để đáp ứng với một loại sự kiện cụ thể. Chúng ta sẽ thảo luận về xử lý sự kiện sau trong hướng dẫn này. Vòng lặp sự kiện sẽ kết thúc khi và khi nhấp vào nút đóng trên thanh tiêu đề. Đoạn mã trên sẽ tạo cửa sổ sauTất cả các lớp tiện ích Tkinter được kế thừa từ lớp Widget. Hãy thêm các vật dụng được sử dụng phổ biến nhất Cái nútNút có thể được tạo bằng lớp Nút. Hàm tạo của lớp Nút yêu cầu tham chiếu đến cửa sổ chính và các tùy chọn Chữ ký. 2Bạn có thể đặt các thuộc tính quan trọng sau để tùy chỉnh một nút
Thí dụ. Cái nút Sao chép
Nhãn mácNhãn có thể được tạo trong giao diện người dùng trong Python bằng lớp Nhãn. Trình tạo Nhãn yêu cầu đối tượng cửa sổ cấp cao nhất và các tham số tùy chọn. Các tham số của tùy chọn tương tự như đối tượng Button Sau đây thêm một nhãn trong cửa sổ Thí dụ. Nhãn mác Sao chép
Tại đây, chú thích của nhãn sẽ được hiển thị bằng màu đỏ, sử dụng phông chữ Helvetica cỡ 16 Lối vàoTiện ích này hiển thị hộp văn bản một dòng để chấp nhận đầu vào của người dùng. Để nhập văn bản nhiều dòng, hãy sử dụng tiện ích Văn bản. Ngoài các thuộc tính đã được đề cập, hàm tạo của lớp Entry chấp nhận các thuộc tính sau
Đoạn mã sau thêm trường văn bản 3Ví dụ sau tạo một cửa sổ có nút, nhãn và trường nhập Thí dụ. Tạo tiện ích
Ví dụ trên sẽ tạo cửa sổ sau Tiện ích lựa chọnNút radio. Tiện ích này hiển thị một nút chuyển đổi có trạng thái BẬT/TẮT. Có thể có nhiều hơn một nút, nhưng chỉ một trong số chúng sẽ được BẬT tại một thời điểm nhất định nút kiểm. Đây cũng là một nút chuyển đổi. Một hộp kiểm hình chữ nhật xuất hiện trước chú thích của nó. Trạng thái BẬT của nó được hiển thị bằng dấu tích trong hộp sẽ biến mất khi được nhấp để TẮT hộp tổ hợp. Lớp này được định nghĩa trong mô-đun ttk của tkinterpackage. Nó điền dữ liệu thả xuống từ một loại dữ liệu bộ sưu tập, chẳng hạn như bộ hoặc danh sách dưới dạng tham số giá trị hộp danh sách. Không giống như Combobox, tiện ích này hiển thị toàn bộ bộ sưu tập các mục chuỗi. Người dùng có thể chọn một hoặc nhiều mục Ví dụ sau minh họa cửa sổ với các tiện ích lựa chọn. Radiobutton, Checkbutton, Listbox và Combobox Thí dụ. Tiện ích lựa chọn Sao chép________số 8 Xử lý sự kiệnMột sự kiện là một thông báo mà đối tượng ứng dụng nhận được từ các tiện ích GUI khác nhau do tương tác của người dùng. Đối tượng Ứng dụng luôn dự đoán các sự kiện khi nó chạy một vòng lặp lắng nghe sự kiện. Các hành động của người dùng bao gồm nhấp chuột hoặc nhấp đúp chuột, nhấn phím bàn phím trong khi điều khiển nằm trong hộp văn bản, một số yếu tố tăng hoặc mất tiêu điểm, v.v. Events are expressed as strings in Nhiều sự kiện được thể hiện giống như vòng loại. Loại xác định lớp của sự kiện Bảng sau đây cho thấy cách Tkinter nhận ra các sự kiện khác nhau EventModifierTypeQualifierAction Một sự kiện phải được đăng ký với một hoặc nhiều tiện ích GUI trong ứng dụng. Nếu không, nó sẽ bị bỏ qua. Trong Tkinter, có hai cách để đăng ký sự kiện bằng widget. Cách đầu tiên là sử dụng phương thức 4 và cách thứ hai là sử dụng tham số lệnh trong hàm tạo widgetPhương thức ràng buộc ()Phương thức 4 liên kết một sự kiện với một hàm gọi lại để khi sự kiện đó xảy ra, hàm đó được gọicú pháp 1Ví dụ: để gọi hàm 6 khi nhấp vào nút bên trái, hãy sử dụng đoạn mã sauThí dụ. thậm chí ràng buộc Sao chép 3Đối tượng sự kiện được đặc trưng bởi nhiều thuộc tính như tiện ích nguồn, tọa độ vị trí, số nút chuột và loại sự kiện. Chúng có thể được chuyển đến chức năng gọi lại nếu được yêu cầu Tham số lệnhMỗi tiện ích chủ yếu đáp ứng một loại cụ thể. Ví dụ: Nút là nguồn của sự kiện Nút. Vì vậy, nó được mặc định ràng buộc với nó. Các phương thức khởi tạo của nhiều lớp widget có một tham số tùy chọn được gọi là lệnh. Tham số lệnh này được đặt để gọi lại chức năng sẽ được gọi bất cứ khi nào sự kiện ràng buộc của nó xảy ra. Phương pháp này thuận tiện hơn phương pháp 4 8Trong ví dụ dưới đây, cửa sổ ứng dụng có hai trường nhập văn bản và một trường khác để hiển thị kết quả. Có hai đối tượng nút với chú thích Thêm và Trừ. Người dùng phải nhập số vào hai tiện ích Mục nhập. Phép cộng hoặc phép trừ của chúng được hiển thị trong phần ba Nút đầu tiên (Thêm) được định cấu hình bằng tham số lệnh. Giá trị của nó là phương thức 9 trong lớp. Nút thứ hai sử dụng phương pháp 4 để đăng ký nhấp chuột trái với phương pháp 1. Cả hai phương thức đều đọc nội dung của các trường văn bản bằng phương thức 2 của tiện ích Mục nhập, phân tích cú pháp thành số, thực hiện phép cộng/trừ và hiển thị kết quả trong trường văn bản thứ ba bằng phương thức 3 |