Python cung cấp nhiều tùy chọn khác nhau để phát triển giao diện người dùng đồ họa [GUIs]. Quan trọng nhất được liệt kê dưới đây
Tkinter − Tkinter là giao diện Python cho bộ công cụ Tk GUI đi kèm với Python. Chúng tôi sẽ xem xét tùy chọn này trong chương này
wxPython − Đây là giao diện Python mã nguồn mở cho wxWindows http. //wxpython. tổ chức
JPython − JPython là một cổng Python dành cho Java, cho phép các tập lệnh Python truy cập liền mạch vào các thư viện lớp Java trên máy cục bộ http. //www. jython. tổ chức
Có nhiều giao diện khác có sẵn, bạn có thể tìm thấy chúng trên mạng
Lập trình Tkinter
Tkinter là thư viện GUI tiêu chuẩn cho Python. Python khi kết hợp với Tkinter cung cấp một cách nhanh chóng và dễ dàng để tạo các ứng dụng GUI. Tkinter cung cấp giao diện hướng đối tượng mạnh mẽ cho bộ công cụ Tk GUI
Tạo một ứng dụng GUI bằng Tkinter là một nhiệm vụ dễ dàng. Tất cả những gì bạn cần làm là thực hiện các bước sau –
Nhập mô-đun Tkinter
Tạo cửa sổ chính của ứng dụng GUI
Thêm một hoặc nhiều tiện ích nêu trên vào ứng dụng GUI
Nhập vòng lặp sự kiện chính để thực hiện hành động đối với từng sự kiện do người dùng kích hoạt
Thí dụ
#!/usr/bin/python import Tkinter top = Tkinter.Tk[] # Code to add widgets will go here... top.mainloop[]
Điều này sẽ tạo ra một cửa sổ sau -
Tiện ích Tkinter
Tkinter cung cấp nhiều điều khiển khác nhau, chẳng hạn như các 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
Hiện tại có 15 loại widget trong Tkinter. Chúng tôi trình bày các vật dụng này cũng như mô tả ngắn gọn trong bảng sau -
Sr. Không. Toán tử & Mô tả1ButtonTiện ích Nút được sử dụng để hiển thị các nút trong ứng dụng của bạn
2vảiTiện ích Canvas được sử dụng để vẽ các hình dạng, chẳng hạn như đường thẳng, hình bầu dục, đa giác và hình chữ nhật, trong ứng dụng của bạn
3Nút kiểm traTiện ích Nút kiểm được sử dụng để hiển thị một số tùy chọn dưới dạng hộp kiểm. Người dùng có thể chọn nhiều tùy chọn cùng một lúc
4Mục nhậpTiện ích Mục nhập được sử dụng để hiển thị trường văn bản một dòng để chấp nhận giá trị từ người dùng
5khungTiện ích Khung được sử dụng làm tiện ích chứa để sắp xếp các tiện ích khác
6NhãnTiện ích Nhãn được sử dụng để cung cấp chú thích một dòng cho các tiện ích khác. Nó cũng có thể chứa hình ảnh
7hộp danh sáchTiện ích Hộp danh sách được sử dụng để cung cấp danh sách các tùy chọn cho người dùng
8nút thực đơnTiện ích Menubutton được sử dụng để hiển thị các menu trong ứng dụng của bạn
9Thực đơnTiện ích Menu được sử dụng để cung cấp các lệnh khác nhau cho người dùng. Các lệnh này được chứa bên trong Menubutton
Tiện ích Tin nhắn được sử dụng để hiển thị các trường văn bản nhiều dòng để chấp nhận các giá trị từ người dùng
11. Nút phóng xạTiện ích Radiobutton được sử dụng để hiển thị một số tùy chọn dưới dạng nút radio. Người dùng chỉ có thể chọn một tùy chọn tại một thời điểm
12Quy môTiện ích Tỷ lệ được sử dụng để cung cấp tiện ích thanh trượt
13Thanh cuộnTiện ích Thanh cuộn được sử dụng để thêm khả năng cuộn vào các tiện ích khác nhau, chẳng hạn như hộp danh sách
14Văn bảnTiện ích Văn bản được sử dụng để hiển thị văn bản trong nhiều dòng
15Cấp cao nhấtTiện ích Toplevel được sử dụng để cung cấp vùng chứa cửa sổ riêng
16SpinboxTiện ích Spinbox là một biến thể của tiện ích Tkinter Entry tiêu chuẩn, có thể được sử dụng để chọn từ một số giá trị cố định
17Cửa sổ PanedPanedWindow là một tiện ích chứa có thể chứa bất kỳ số lượng ngăn nào, được sắp xếp theo chiều ngang hoặc chiều dọc
18NhãnKhungLabelframe là một tiện ích chứa đơn giản. Mục đích chính của nó là hoạt động như một miếng đệm hoặc vùng chứa cho các bố cục cửa sổ phức tạp
19 tkMessageBoxMô-đun này được sử dụng để hiển thị các hộp thông báo trong các ứng dụng của bạn
Hãy để chúng tôi nghiên cứu các vật dụng này một cách chi tiết -
thuộc tính tiêu chuẩn
Chúng ta hãy xem làm thế nào một số thuộc tính phổ biến của họ. chẳng hạn như kích thước, màu sắc và phông chữ được chỉ định
Hãy để chúng tôi nghiên cứu chúng một thời gian ngắn -
Quản lý hình học
Tất cả các tiện ích Tkinter đều có quyền truy cập vào các phương pháp quản lý hình học cụ thể, có mục đích tổ chức các tiện ích trong khu vực tiện ích chính. Tkinter hiển thị các lớp trình quản lý hình học sau. gói, lưới và địa điểm
Phương thức pack[] - Trình quản lý hình học này sắp xếp các widget theo khối trước khi đặt chúng vào widget chính
Phương thức grid[] - Trình quản lý hình học này tổ chức các widget theo cấu trúc giống như bảng trong widget cha
Phương thức place[] - Trình quản lý hình học này tổ chức các widget bằng cách đặt chúng ở một vị trí cụ thể trong widget cha
Các bạn đọc like ủng hộ MUO nhé. Khi bạn mua hàng bằng các liên kết trên trang web của chúng tôi, chúng tôi có thể kiếm được hoa hồng liên kết. Đọc thêmPython là một ngôn ngữ phổ biến hoạt động tốt trên backend, frontend và thậm chí trên các ứng dụng full-stack. Thư viện tiêu chuẩn có vô số mô-đun và thư viện, nhưng đôi khi bạn cần thứ gì đó chuyên biệt hơn
Giao diện người dùng đồ họa [GUI] là điều cần thiết để tạo các ứng dụng thân thiện với người dùng. Tuy nhiên, việc tạo một GUI đầy đủ nghe có vẻ là một thách thức quá lớn
Để tạo GUI phức tạp cho [các] ứng dụng của bạn, bạn có thể sử dụng các khung khác nhau để thực hiện đặt giá thầu của mình
Tám khung Python này đứng đầu trò chơi của chúng và có thể làm nên điều kỳ diệu cho quá trình xây dựng ứng dụng của bạn
1. wxPython
wxPython là bộ công cụ đa nền tảng hữu ích để tạo các ứng dụng GUI trên máy tính để bàn. Nó được xây dựng dựa trên bộ công cụ wxWidgets và cung cấp một bộ tính năng mạnh mẽ và hiệu quả
Vì wxPython là bộ công cụ đa nền tảng nên bạn có thể chạy các ứng dụng của mình trên các hệ thống dựa trên Windows, Linux, Mac và Unix
wxPython là một mô-đun mở rộng ổn định, đầy đủ tính năng và được duy trì tích cực, được xây dựng bằng C++ và Python, do đó, nó đáng tin cậy và nhanh chóng
Bộ công cụ được viết theo phong cách hướng đối tượng nên dễ sử dụng và dễ hiểu. Nó cũng hoàn toàn là mã nguồn mở, vì vậy bạn có thể lấy mã nguồn để sử dụng theo bất kỳ cách nào bạn muốn. Bạn sẽ cần cài đặt pip trên máy tính của mình để cài đặt wxPython
Để cài đặt wxPython, bạn có thể sử dụng lệnh pip như sau
pip install -U wxPython
2. tkinter
Tkinter là phiên bản giao diện của Python dành cho bộ tiện ích Tk. Nó là giao diện Python tiêu chuẩn cho bộ công cụ Tk GUI và là bộ công cụ GUI tiêu chuẩn trên thực tế của Python
Tkinter được cài đặt sẵn trên Linux, Microsoft Windows và Mac OS X cài đặt Python. Thư viện Python này cung cấp cho bạn giao diện hướng đối tượng mạnh mẽ cho bộ công cụ Tk GUI. Nó khá hữu ích để thiết kế nhiều ứng dụng, bao gồm các ứng dụng máy tính để bàn thường được sử dụng
Bạn có thể sử dụng thư viện để tạo GUI đa nền tảng bằng Python, sử dụng các tiện ích mạnh mẽ mà nó cung cấp. Ví dụ: tiện ích Nút lý tưởng để tạo các nút trong GUI Python. Hãy yên tâm, có rất nhiều điều để mong đợi với Tkinter
Để cài đặt PyGUI trên Python, bạn có thể sử dụng lệnh sau
pip install tk
3. kivy
Kivy là một trong những framework đa nền tảng phổ biến nhất để phát triển. Với Kivy, bạn có thể sử dụng Python để tạo các ứng dụng phù hợp với Android, iOS, Linux, Windows và nhiều ứng dụng web khác
Thư viện sử dụng Python và Cython làm cơ sở. Nó có hỗ trợ tuyệt vời cho chức năng cảm ứng đa điểm, khai thác toàn bộ sức mạnh của màn hình thiết bị cho đầu vào
Cử chỉ và các loại đầu vào khác cũng được hỗ trợ, làm cho nó trở thành một lựa chọn tuyệt vời để phát triển các ứng dụng hiện đại
Kivy sử dụng ngôn ngữ lập trình trực quan kết hợp các yếu tố lập trình dựa trên nút và dựa trên GUIM. Những yếu tố này làm cho thư viện có thể thích ứng và hiệu quả
Tuy nhiên, nó có thể không phù hợp khi bạn muốn tạo các GUI phức tạp, trực quan. Kivy miễn phí, mã nguồn mở và được cấp phép theo Giấy phép MIT
Trước khi cài đặt Kivy, bạn cần đáp ứng một số điều kiện tiên quyết như nâng cấp Python và cài đặt pip. Sử dụng đoạn mã sau
pip install --upgrade pip setuptools virtualenv
Tiếp theo, tạo một môi trường ảo để kiểm tra và cài đặt Kivy và các mục phụ thuộc của nó. Bạn có thể tạo môi trường ảo kivy_venv như sau
python -m virtualenv kivy_venv
Kích hoạt môi trường ảo bằng lệnh kích hoạt
source ./kivy_venv/bin/activate
Cuối cùng, với môi trường ảo đã được kích hoạt, bạn có thể cài đặt Kivy bằng lệnh kivy[base]. Điều này cài đặt các phụ thuộc tối thiểu, cùng với cài đặt cơ bản của phần mềm GUI
pip install "kivy[base]"
Có thêm thông tin cài đặt cho các hệ điều hành khác nhau trên kivy. tổ chức
4. Pyforms
Pyforms là một thư viện mã nguồn mở Python cho phép bạn tạo giao diện người dùng đồ họa tùy chỉnh. Nó bao gồm nhiều tiện ích, nhãn, hộp kiểm, trường nhập và nút
Là một thư viện, Pyforms lý tưởng để xây dựng GUI yêu cầu nhiều thông tin đầu vào của người dùng. Cho dù bạn đang xây dựng ứng dụng dành cho máy tính để bàn, trang web hay ứng dụng dành cho thiết bị di động, thư viện này sẽ giúp bạn tạo giao diện người dùng đẹp mắt
Giống như Kivy, Pyforms được MIT cấp phép, có nghĩa là nó miễn phí và là mã nguồn mở
Bạn có thể cài đặt Pyforms theo cách sau
pip install pyforms-gui
5. PySimpleGUI
PySimpleGUI là một trình bao bọc xung quanh các khung GUI Tkinter, Qt và WxPython. Nó biến chúng thành một API đơn giản và nhất quán
Mục tiêu là giúp mọi người tạo GUI dễ dàng hơn mà không cần tìm hiểu tất cả các sắc thái của các API khác nhau. Nó đơn giản hóa đường cong học tập cho các API và cho phép bạn tập trung vào logic của chương trình của mình
Nó thực hiện tất cả điều này bằng cách cung cấp một API nhất quán không thay đổi trên các API GUI khác nhau
Để cài đặt PySimpleGUI, hãy sử dụng mã như sau
________số 86. GUI trò chơi
Pygame GUI là một thư viện giao diện người dùng đồ họa được viết bằng Python, sử dụng Pygame làm phần phụ trợ của nó. Pygame GUI là đứa con tinh thần của Pete Shinners và nó có sẵn theo giấy phép MIT
Thư viện GUI Pygame là mã nguồn mở và sử dụng thư viện Pygame để có thể tạo trò chơi với giao diện người dùng đồ họa
Nó được thiết kế riêng cho các nhà phát triển có hiểu biết tốt về Python và Pygame, nhưng không phải là nhà thiết kế đồ họa. Các nhà phát triển có thể sử dụng Pygame GUI để tạo GUI trò chơi mà không cần phần mềm thiết kế đồ họa mở rộng
Đây là cách bạn có thể GUI Pygame trên Python
pip install pygame_gui -U
7. PyQt5
PyQt5 không chỉ là thư viện GUI mà còn là khung phát triển ứng dụng đa nền tảng hoàn chỉnh. Nó là một trình bao bọc xung quanh khung Qt
PyQt cung cấp cho bạn hai tùy chọn để xây dựng GUI của bạn. Đầu tiên là API Qt Widgets để tạo ứng dụng trên máy tính để bàn. Thứ hai là API khai báo có tên là Qt Quick/QML, giúp bạn xây dựng giao diện cảm ứng cho bộ vi điều khiển và thiết bị
Sử dụng khung này, bạn có thể xây dựng các ứng dụng quy mô nhỏ và quy mô lớn với mã nhất quán, có thể tái sử dụng
Để cài đặt PyQt, hãy sử dụng đoạn mã sau
pip install -U wxPython
Sử dụng các khung của Python để phát triển GUI tùy chỉnh
Python, với tư cách là một ngôn ngữ nguồn mở, cung cấp nhiều tùy chọn để đáp ứng các nhu cầu phát triển khác nhau
Từ việc chuẩn bị các báo cáo phức tạp đến phát triển web và tùy chỉnh ứng dụng, bạn có thể giải quyết hầu hết mọi tác vụ với Python
Trước khi bạn có thể sử dụng Python để đáp ứng các nhu cầu khác nhau, bạn cần nắm vững các sắc thái của nó và học cách làm cho ngôn ngữ này hoạt động cho bạn
Dù trình độ của bạn là gì, bạn có thể tìm thấy một khóa học bao gồm các chủ đề mà bạn cần để tinh chỉnh các kỹ năng Python của mình
Python có đi kèm với thư viện GUI không?
Tkinter. Tkinter là khung GUI thực tế cho Python . Nó đi kèm với Python trên cả Windows và macOS.Khung Python nào là tốt nhất cho GUI?
Qt được coi là tiêu chuẩn cho thiết kế GUI để đo lường tất cả các khung GUI Python khác. Như vậy, PySide2 cho phép các nhà phát triển Python truy cập vào bộ sưu tập các công cụ và thư viện đã được chứng minh để tạo giao diện người dùng nhanh chóng và linh hoạt.PyQt có tốt cho GUI không?
PyQt là một trong những bộ công cụ bạn có thể sử dụng để phát triển các ứng dụng GUI đa nền tảng bằng Python . Nó mạnh mẽ và dễ học nếu bạn đã nắm vững ngôn ngữ này.Tkinter có phải là GUI duy nhất cho Python không?
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 .