Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Giao diện người dùng đồ họa (GUI) là giao diện máy tính để bàn cho phép bạn giao tiếp với máy tính. Họ thực hiện các hoạt động khác nhau trên máy tính để bàn, máy tính xách tay và các thiết bị di động khác. Trình soạn thảo văn bản và các ứng dụng giao diện người dùng đồ họa khác xây dựng, đọc, tải xuống và xóa các loại tệp khác nhau. Bạn cũng có thể chơi các trò chơi như Sudoku, Cờ vua và Solitaire thông qua các ứng dụng này. Google Chrome, Firefox và Microsoft Edge là những ví dụ về trình duyệt Internet giao diện người dùng đồ họa (GUI)

Python có nhiều thư viện, nhưng bốn thư viện này nổi bật, đặc biệt là về GUI.   

  • tkinter
  • kivy
  • Trăn QT
  • wxPython

Tkinter là lựa chọn hàng đầu của rất nhiều người học và lập trình viên vì nó nhanh chóng và tiện lợi khi sử dụng. Tkinter là một thư viện Python có thể được sử dụng để xây dựng các ứng dụng giao diện người dùng đồ họa (GUI) cơ bản. Trong Python, nó là mô-đun được sử dụng rộng rãi nhất cho các ứng dụng GUI

Tiếp theo, hãy bắt đầu với Tkinter

Xây dựng ứng dụng GUI Python đầu tiên của bạn với Tkinter

Để bắt đầu xây dựng ứng dụng Tkinter của bạn, bước đầu tiên là cài đặt mô-đun Tkinter trong trình bao python

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Bước tiếp theo là mở một cửa sổ trong Tkinter. Đoạn mã dưới đây sẽ mở một phiên bản cửa sổ trên hệ thống của bạn

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đoạn mã trên sẽ mở ra một cửa sổ giống như bên dưới. Xin lưu ý rằng sự xuất hiện của cửa sổ sẽ phụ thuộc vào hệ điều hành của bạn

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

  • Thêm một tiện ích

Trước khi thêm tiện ích, hãy đổi tên tiêu đề cửa sổ thành GUI. Bạn có thể làm điều này bằng cách thêm cửa sổ. tiêu đề và đặt tên mà bạn muốn đặt tiêu đề

Bước tiếp theo là thêm tiện ích nhãn vào cửa sổ. Nhãn là thứ mà chúng tôi muốn màn hình đầu ra hiển thị. Để thêm nhãn vào cửa sổ, chúng tôi đã sử dụng phương thức gói của tiện ích nhãn

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Khóa đào tạo Python

Tìm hiểu về thao tác dữ liệu trong Python Khám phá khóa học

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Làm việc với Widget

Trong python, các widget hoạt động tương tự như các phần tử HTML. Các loại Tkinter khác nhau tương ứng với các loại phần tử khác nhau

Một số tiện ích có sẵn trong Tkinter được đưa ra bên dưới

tiện ích

Sự miêu tả

Tranh sơn dầu

Canvas được sử dụng trong GUI để vẽ hình

Cái nút

Tiện ích nút được sử dụng để hiển thị các nút trong Tkinter

nút kiểm

Checkbutton là lớp dùng để xây dựng các checkbox trong chương trình

Lối vào

Tiện ích mục nhập được sử dụng trong GUI để xây dựng các trường nhập liệu

Khung

Trong Tkinter, các khung được sử dụng làm vùng chứa

Nhãn

Nhãn được sử dụng để tạo các tiện ích một dòng như văn bản, ảnh và nhiều tiện ích khác

Thực đơn

Menu được đưa vào GUI để xây dựng menu

NhãnKhung

Nó là một tiện ích chứa. Chức năng chính của nó là phục vụ như một miếng đệm hoặc vùng chứa cho các định dạng cửa sổ phức tạp

nút thực đơn

Menubutton là một thành phần của menu thả xuống luôn hiển thị trên màn hình. Mỗi menubutton được liên kết với một tiện ích Menu, hiển thị các tùy chọn của menubutton khi người dùng nhấp vào nó

Thanh cuộn

Tiện ích này bao gồm một bộ điều khiển trượt để triển khai các tiện ích được cuộn theo chiều dọc như Hộp danh sách, Văn bản và Canvas

Tỉ lệ

Khi chúng tôi cố gắng chọn một giá trị từ một tập hợp các giá trị, chúng tôi sử dụng tiện ích Tỷ lệ. Nó có một thanh trượt mà từ đó chúng ta có thể chọn các giá trị bằng cách trượt từ trái sang phải hoặc từ trên xuống dưới

Sổ tay

Tiện ích này được sử dụng để chọn các trang nội dung bằng cách nhấp vào các tab

hộp tổ hợp

Tiện ích Combobox cho phép bạn chọn một thuộc tính từ một tập hợp các tùy chọn. Nó cũng giúp bạn nhập một giá trị tùy chỉnh

Hộp xoay

Tiện ích Spinbox là một biến thể của tiện ích Tkinter Entry cơ bản cho phép bạn chọn từ một bộ giá trị đã xác định

dấu phân cách

Tiện ích phân cách thêm một quy tắc ngang hoặc dọc mỏng giữa các loại tiện ích

Thanh tiến trình

Tiện ích Thanh tiến trình giúp bạn thông báo cho người dùng về trạng thái của một nhiệm vụ dài hạn

thước kẹp

Nó cung cấp cho bạn tùy chọn thay đổi kích thước cửa sổ ứng dụng nhập

xem cây

TreeView cho phép một người xây dựng cấu trúc dạng cây và chèn các đối tượng cùng với các thuộc tính của chúng

  • Hiển thị văn bản và hình ảnh với các tiện ích nhãn

Tiện ích nhãn được sử dụng để thêm văn bản hoặc hình ảnh vào cửa sổ. Như chúng ta đã thấy trong ví dụ trước, chúng ta có thể thêm tiện ích nhãn bằng cách tạo lớp Nhãn. Để thêm văn bản vào tiện ích, chúng tôi chuyển một chuỗi vào tham số văn bản

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Theo mặc định, màu của văn bản và nền được đặt tương ứng là đen và trắng, nhưng bạn có thể thay đổi tương tự bằng cách thêm các tham số khác như nền để có màu bạn chọn

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Bây giờ, như bạn có thể thấy ở đây, văn bản xuất hiện với màu mặc định là i. e màu đen và vì chúng tôi đã thay đổi màu đen nên nó xuất hiện màu đỏ

  • Hiển thị các nút có thể nhấp bằng tiện ích nút

Các tiện ích nút được sử dụng để tạo các nút có thể nhấp. Nó rất giống với tiện ích nhãn. Trong phần này, chúng ta sẽ chỉ xem cách tạo kiểu cho các nút chứ không xem xét chức năng của các nút.  

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

  • Nhận đầu vào của người dùng với Widget mục nhập

Trường mục nhập được sử dụng để lấy đầu vào từ người dùng trong GUI

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Lớp nhập ở đây sẽ tạo một hộp văn bản trong cửa sổ, nơi người dùng có thể nhập bất kỳ văn bản nào

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Như bạn có thể thấy ở đây, chúng tôi đã nhập văn bản dưới dạng Python trong trường văn bản được tạo bởi lớp mục nhập

  • Nhận đầu vào của người dùng nhiều dòng với các tiện ích văn bản

Widget văn bản hoạt động tương tự như widget mục nhập. Nhưng sự khác biệt chính là trong một tiện ích văn bản, chúng ta có thể nhập đầu vào vào nhiều dòng không giống như trong tiện ích nhập

Chúng tôi tạo một Văn bản và. pack() để lấy trường văn bản hiển thị trong cửa sổ

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Khi chúng ta sử dụng lớp Văn bản, toàn bộ cửa sổ hoạt động như một trường văn bản và chúng ta có thể viết đầu vào ở bất kỳ dạng nào chúng ta muốn, trong nhiều dòng hoặc một đoạn văn

  • Gán các tiện ích cho các khung với các tiện ích khung

Khung là một khu vực hình chữ nhật có thể chứa các vật dụng khác trong Tkinter. Nó được sử dụng để tổ chức các bố cục phức tạp và không có bất kỳ kiểu dáng đặc biệt nào của riêng nó

Trong ví dụ bên dưới, chúng tôi tạo hai khung và hơn nữa, trong mỗi khung, chúng tôi đã tạo một tiện ích nhãn, chứa một số văn bản.  

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Trong đoạn mã trên, chúng tôi đã gọi frame_a trước, do đó văn bản của nó xuất hiện đầu tiên, nhưng nếu chúng tôi đảo ngược thứ tự mà chúng được gọi, đầu ra cũng sẽ bị đảo ngược

  • Hiểu các quy ước đặt tên widget

Widget tuân theo cấu trúc gần với cấu trúc đặt tên gói. Cửa sổ gốc trong Tk được gọi với thời lượng (. ) và một thực thể trong cửa sổ, chẳng hạn như nút, được đặt tên. myButton1. Nên sử dụng chữ thường, chữ số hoặc dấu chấm câu (trừ dấu chấm) để bắt đầu tên biến. Sau ký tự đầu tiên, các ký tự còn lại có thể là chữ hoa hoặc chữ thường, số hoặc dấu câu (trừ dấu chấm). Tốt nhất là bắt đầu nhãn bằng một chữ thường

khóa học miễn phí. Python cho người mới bắt đầu

Nắm vững kiến ​​thức cơ bản về Python Đăng ký ngay

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Kiểm soát bố cục với Trình quản lý hình học

Tất cả các tiện ích Tkinter đều có kích thước hình học nhất định. Các phép đo hình học này cho phép bạn sắp xếp các tiện ích con và khung chính hoặc không gian tiện ích con chính

Tkinter có ba lớp quản lý hình học chính

đóng gói(). Nó sắp xếp các vật dụng theo kiểu khối, chiếm toàn bộ chiều rộng có sẵn. Đó là một cách tiêu chuẩn để hiển thị các widget trong trình duyệt

lưới(). Chức năng này sắp xếp các vật dụng theo cách sắp xếp giống như bảng.  

nơi(). Chức năng của nó là đặt các widget theo chỉ định của người dùng trong widget cha

Bây giờ, chúng ta hãy xem xét chi tiết từng lớp này

  • Các. pack() Trình quản lý hình học

Cách tiếp cận pack() chủ yếu thực hiện thuật toán đóng gói để sắp xếp các widget trong Khung hoặc cửa sổ theo một thứ tự nhất định

Cách tiếp cận này được định nghĩa là sử dụng để sắp xếp các vật dụng trong một khối

Trước tiên, thuật toán này sẽ tính toán một khu vực hình chữ nhật được gọi là Bưu kiện đủ cao (hoặc rộng) để chứa tiện ích con, sau đó nó sẽ lấp đầy chiều rộng (hoặc chiều cao) còn lại trong cửa sổ bằng khoảng trống

Trừ khi một vị trí riêng biệt được xác định, nó sẽ tập trung vào tiện ích

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Như bạn có thể thấy ở đây, các khung khác nhau đã được sắp xếp theo thứ tự chiều cao và chiều rộng giảm dần, cũng như thứ tự gọi phương thức của chúng.

  • Các. place() Trình quản lý hình học

Trình quản lý hình học place() tổ chức các widget để chúng có thể được đặt ở một vị trí nhất định theo chỉ định của lập trình viên

Cách tiếp cận này về cơ bản tổ chức tiện ích dựa trên tọa độ x và y. Cả tọa độ x và y đều được biểu thị bằng pixel

Kết quả là tâm (trong đó x và y đều bằng 0) là góc trên cùng bên trái của Khung hoặc cửa sổ

Do đó, đối số y chỉ định số lượng pixel để định vị tiện ích con từ trên cùng của màn hình và đối số x chỉ định số lượng pixel để đặt tiện ích con từ bên trái cửa sổ

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

  • Các. grid() Trình quản lý hình học

Trình quản lý hình học grid() sắp xếp các widget theo kiểu bảng. Trong lời gọi phương thức, chúng ta có thể định nghĩa các hàng và cột là các lựa chọn. Cột (chiều rộng) hoặc hàng (chiều cao) của widget cũng có thể được xác định

Đây là một phương pháp hợp lý hơn để thêm các widget vào chương trình Python

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter

Đầu ra-

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter
 

Tìm chương trình đào tạo Python của chúng tôi tại các thành phố hàng đầu

Ấn ĐộHoa KỳCác nước khácĐào tạo Python BangaloreĐào tạo Python HoustonKhóa học Python SingaporeĐào tạo Python ChennaiĐào tạo Python Los AngelesKhóa học Python OxfordĐào tạo Python HyderabadĐào tạo Python AustinKhóa học Python Dubai

Làm cho ứng dụng của bạn tương tác

  • Sử dụng Sự kiện và Trình xử lý Sự kiện

Để bắt đầu vòng lặp sự kiện, bạn phải gọi cửa sổ. mainloop() khi bạn xây dựng chương trình Tkinter. Trong vòng lặp sự cố, ứng dụng sẽ xác định xem sự cố có xảy ra hay không. Nếu đây là trường hợp, bất kỳ mã nào cũng có thể được thực thi để đáp lại

Tkinter có vòng lặp sự kiện, vì vậy bạn không phải viết bất kỳ mã nào để tự tìm kiếm sự kiện. Do đó, bạn phải viết mã sẽ được thực thi để phản hồi lại một sự cố. Đối với các sự kiện mà bạn sử dụng trong chương trình của mình, bạn viết các hàm được gọi là trình xử lý sự kiện trong Tkinter

  • sử dụng. trói buộc

bind() được sử dụng để gọi một trình xử lý sự kiện nếu một sự kiện xảy ra trên một widget. Vì nó được gọi bất cứ khi nào sự kiện xảy ra, bộ điều khiển sự kiện được coi là gắn liền với sự kiện.  

  • Sử dụng lệnh

Mỗi tiện ích Nút có một thuộc tính lệnh có thể được sử dụng để thêm một tính năng cho nó. Hoạt động được thực hiện sau khi nhấn nút

Mong muốn chuyển sang lĩnh vực lập trình?

Phần kết luận

Đó là tất cả về mô-đun Tkinter trong python, và bây giờ bằng cách tìm hiểu những điều cơ bản này, bạn có thể tạo ứng dụng đầu tiên của mình bằng Tkinter

Bạn cũng nên đẩy mạnh trò chơi Python của mình và đạt được trình độ thông thạo ngôn ngữ lập trình đang thịnh hành này bằng cách đăng ký Khóa học cấp chứng chỉ Python của Simplilearn ngay hôm nay

Và nếu bạn có bất kỳ nghi ngờ nào, vui lòng gửi chúng trong phần bình luận và các chuyên gia của chúng tôi sẽ giúp bạn

Thông tin về các Tác giả

Viết chương trình GUI Python để tạo tiện ích thanh Tiến trình bằng mô-đun tkinter
Ravikiran AS

Ravikiran A S làm việc với Simplilearn với tư cách là Nhà phân tích nghiên cứu. Anh ấy là một người đam mê nhiệt tình, luôn săn lùng những công nghệ mới nhất. Anh ấy thành thạo Ngôn ngữ lập trình Java, Dữ liệu lớn và các Khung dữ liệu lớn mạnh mẽ như Apache Hadoop và Apache Spark

Chức năng nào được sử dụng để tạo thanh tiến trình trong tkinter?

Hàm grid() đã được gọi với biến “t” để sắp xếp GUI theo định dạng bảng. Sau đó, chúng tôi đã sử dụng biến “p” để tạo thanh tiến trình thông qua hàm Progressbar() của đối tượng lớp ttk với cùng “ .

Làm cách nào để tạo GUI trong Python bằng Tkinter?

Tkinter là Gói Python để tạo ứng dụng GUI. Python có rất nhiều khung GUI, nhưng Tkinter là khung duy nhất được tích hợp trong thư viện chuẩn Python. .
Nhập gói tkinter và tất cả các mô-đun của nó
Tạo một cửa sổ gốc. .
Sử dụng mainloop() để gọi vòng lặp vô tận của cửa sổ

Thanh tiến trình trong GUI là gì?

Thanh tiến trình là một thành phần GUI phổ biến được sử dụng để hiển thị tiến trình của một tác vụ nhất định . Trong bài viết này, chúng ta sẽ xem cách tạo thanh tiến trình bằng thư viện GUI Python tkinter. Trong chương trình dưới đây, chúng tôi đã nhập mô-đun phụ thanh tiến trình của tkinter. mô-đun ttk.

Widget trong tkinter GUI trong Python là gì?

Tkinter cung cấp nhiều điều khiển khác nhau, chẳng hạn như nút, nhãn và hộp văn bản được sử dụng trong ứng dụng GUI. Các điều khiển này thường được gọi là widget.