Làm cách nào để tạo một ứng dụng máy tính bằng Python?

Trong hướng dẫn sau, chúng ta sẽ tìm hiểu cách xây dựng một máy tính GUI đơn giản bằng thư viện Tkinter trong Python. Chúng ta sẽ học toàn bộ đoạn mã theo từng bước

Vậy hãy bắt đầu

Bắt đầu với Máy tính GUI bằng Tkinter

Thư viện Tkinter cung cấp cách nhanh nhất và dễ dàng nhất để phát triển ứng dụng dựa trên Giao diện người dùng đồ họa [GUI] bằng ngôn ngữ lập trình Python. Gói Tkinter, còn được gọi là "giao diện Tk", là giao diện Python tiêu chuẩn cho bộ công cụ Tcl/Tk GUI. Cả Tk và Tkinter đều khả dụng trên hầu hết các nền tảng Unix và hệ thống Windows. Trong trường hợp ai đó đang làm việc trên Linux/Ubuntu, thì cần phải cài đặt gói Tkinter trên máy của họ để chạy các chương trình;

Nếu Tkinter không được cài đặt sẵn trong Python, thì chúng ta có thể cài đặt nó bằng trình cài đặt 'pip' bằng cách nhập lệnh sau trong Dấu nhắc Lệnh của Windows

cú pháp

Hộp thư Tkinter là gì?

Messagebox là một widget trong thư viện Tkinter của Python. Tiện ích này được sử dụng để hiển thị các hộp thông báo trong các ứng dụng Python. Chúng ta có thể sử dụng mô-đun này để hiển thị thông báo bằng một số chức năng

cú pháp

Thông số

  1. Tên Của Chức Năng. Đối số này được sử dụng để biểu thị một chức năng thích hợp cho hộp thông báo
  2. Tiêu đề. Đối số này là một chuỗi biểu thị tiêu đề của hộp thông báo
  3. thông điệp. Đối số này cũng là một chuỗi bao gồm thông báo sẽ được hiển thị trên hộp thông báo
  4. **tùy chọn. Có hai tùy chọn có thể được sử dụng ở đây
    1. mặc định. Tùy chọn này được sử dụng để biểu thị nút mặc định như ABORT, RETRY hoặc IGNORE trong hộp thông báo
    2. cha mẹ. Tùy chọn này được sử dụng để biểu thị cửa sổ trên đó hộp thông báo được hiển thị

Hiểu cấu trúc của GUI Calculator

Để bắt đầu xây dựng máy tính GUI, chúng ta cần hiểu cấu trúc của nó. Phân tích này sẽ làm cho công việc hiệu quả và hiệu quả hơn nhiều. Sau đây là cấu trúc của GUI Calculator mà chúng ta sẽ xây dựng

Cấu trúc trên bao gồm Nhãn, Khung và Nút. Hãy để chúng tôi thảo luận ngắn gọn về các vật dụng này

Nhãn Python Tkinter. Tiện ích Nhãn được sử dụng để chỉ định hộp chứa nơi người dùng có thể đặt văn bản hoặc hình ảnh. Tiện ích này được sử dụng để cung cấp thông báo cho người dùng liên quan đến các tiện ích khác được sử dụng trong ứng dụng Python

Khung Tkinter Python. Tiện ích Khung chỉ là một loại tiện ích. Các khung trong Python hoạt động như các thùng chứa cho các phần tử con của nó. Các vật dụng này cung cấp các máy tính lớn cho các phần tử con và cho phép chúng tôi chia toàn bộ bố cục của khung ứng dụng theo từng khung

Ví dụ: chúng tôi chạy ứng dụng có cấu trúc bao gồm một nhãn ở đầu và sau đó là một số nút trên cửa sổ gốc. Ta có thể chia phần cửa sổ gốc này theo từng phần. Giả sử nhãn là một phân khúc và sau đó các nút vào một phân khúc khác. Nếu chúng ta đặt các phân đoạn này trong một khung, khung này sẽ đóng vai trò là phần tử cha. Điều này sẽ cho phép chúng tôi đơn giản hóa thiết kế phức tạp

Khi chúng tôi đưa các khung vào cấu trúc của máy tính GUI, cấu trúc của nó sẽ trông như thế này

  1. Nhãn mác
  2. khung hình đầu tiên. bốn nút
  3. Khung thứ hai. bốn nút
  4. Khung thứ ba. bốn nút
  5. Khung thứ tư. bốn nút

Các nút Tkinter của Python. Tiện ích Nút được sử dụng để chèn các nút trong ứng dụng Python. Các nút này có thể hiển thị văn bản hoặc hình ảnh thể hiện mục tiêu của các nút. Chúng ta có thể đính kèm một phương thức hoặc một hàm vào một nút được gọi tự động bất cứ khi nào chúng ta nhấp vào nút đó

Bây giờ chúng ta đã hiểu cấu trúc của máy tính GUI mà chúng ta sẽ xây dựng, chúng ta có thể chuyển sang phần mã

Triển khai mã của máy tính GUI trong Python

Trong phần sau, chúng ta sẽ thấy việc triển khai mã của máy tính GUI bằng ngôn ngữ lập trình Python. Việc triển khai dự án này sẽ được thực hiện từng bước

Bước 1. Xác định chức năng

Bước 2. Tạo cửa sổ cho máy tính GUI

Bước 3. Thiết lập định dạng nhãn

Bước 4. Đóng gói nút trên cửa sổ

Bước 5. Thêm các nút vào máy tính GUI

Xác định chức năng

Bây giờ chúng tôi sẽ bắt đầu bằng cách nhập các thư viện và mô-đun cần thiết. Bây giờ chúng ta hãy xem xét đoạn mã sau thể hiện điều tương tự

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng tôi đã nhập thư viện cần thiết như Tkinter cùng với tất cả các lớp widget, bao gồm cả mô-đun hộp thư

Bây giờ chúng ta sẽ xác định các chức năng sẽ vận hành hoạt động của các nút. Bây giờ chúng ta hãy xem xét đoạn mã sau minh họa việc triển khai chức năng được gọi bất cứ khi nào người dùng nhấn nút '1'

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng tôi đã xác định một số biến và khởi tạo chúng với các giá trị ban đầu. Sau đó, chúng tôi đã xác định một chức năng sẽ được gọi bất cứ khi nào người dùng nhấn nút '1'. Sau đó, chúng tôi đã sử dụng từ khóa toàn cầu cùng với biến var trong hàm này. Điều này sẽ cho phép chúng ta sửa đổi giá trị của biến var bên trong hàm này. Sau đó, chúng ta đã nối 1 với biến var và đặt biến này trong StringVar bằng cách sử dụng phương thức set[] mà chúng ta sẽ định nghĩa sau trong hướng dẫn

Bất cứ khi nào người dùng nhấp vào nút số '1', chức năng này sẽ được gọi. Hàm này sẽ hiển thị số được nhấp trên nhãn và lưu trữ nó trong một biến khác để dễ dàng tính toán

Bây giờ chúng tôi sẽ làm theo các bước tương tự cho tất cả các nút Tkinter. Đây là đoạn mã minh họa việc thực hiện cùng

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng tôi đã xác định các hàm khác nhau để nối giá trị hoặc toán tử được yêu cầu vào chuỗi. Đối với các giá trị nằm trong khoảng từ 0 đến 9, chúng tôi đã sử dụng từ khóa toàn cầu cùng với biến var và nối chữ số cần thiết vào chuỗi cuối cùng. Đối với các toán tử như +, -, *, /, = và C, chúng tôi đã sử dụng các từ khóa chung cùng với biến A, var và toán tử và nối toán tử cần thiết vào chuỗi cuối cùng. Cuối cùng, chúng ta đã định nghĩa một hàm để tính toán kết quả. Trong chức năng này, một lần nữa chúng tôi đã sử dụng từ khóa toàn cầu để sửa đổi các giá trị của A, toán tử và biến var. Sau đó, chúng tôi đã khai báo và khởi tạo một biến mới đặt giá trị của nó thành var. Sau đó, chúng tôi đã sử dụng các câu lệnh điều kiện if-elif-else để hoạt động theo yêu cầu và lưu trữ kết quả

Tạo cửa sổ cho GUI Calculator

Bây giờ chúng ta sẽ tạo một cửa sổ bằng lớp Tk[] của thư viện Tkinter. Cửa sổ này sẽ bao gồm một thanh tiêu đề và các đồ trang trí khác

Cửa sổ gốc là cửa sổ ứng dụng chính trong các chương trình. Nó phải được tạo trước bất kỳ vật dụng nào khác. Cửa sổ này bao gồm một thanh tiêu đề và các đường viền. Những đồ trang trí này được cung cấp bởi người quản lý cửa sổ

Phương thức hình học của lớp Tk[] cho phép người lập trình đặt kích thước cho cửa sổ và vị trí trên màn hình. Hai tham số đầu tiên của phương thức này là chiều rộng và chiều cao của cửa sổ, trong khi hai tham số cuối cùng là tọa độ x và y để định vị cửa sổ trên màn hình

Phương thức thay đổi kích thước của lớp Tk[] cho phép người dùng thay đổi kích thước của cửa sổ theo nhu cầu của họ. Chúng tôi sẽ đặt các tham số của phương thức này thành 0, vô hiệu hóa tùy chọn thay đổi kích thước từ cửa sổ. Tốt hơn là sử dụng phương pháp có thể thay đổi kích thước [0, 0] vì nó sẽ làm cho máy tính trông phù hợp tại chỗ

Bây giờ chúng ta hãy xem xét đoạn mã sau thể hiện điều tương tự

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng ta đã tạo một đối tượng thuộc lớp Tk[]. Sau đó, chúng tôi đã đặt kích thước của cửa sổ bằng phương thức hình học []. Chúng tôi cũng đã sử dụng phương thức resizable[] và đặt tham số thành 0 để tắt tùy chọn thay đổi kích thước để có Giao diện người dùng tốt hơn. Cuối cùng, chúng tôi đã sử dụng phương thức title[] và thêm tiêu đề vào máy tính

Thiết lập định dạng nhãn

Tiện ích Nhãn cho phép chúng tôi tạo hộp hiển thị nơi chúng tôi có thể đặt văn bản hoặc hình ảnh. Tiện ích này cho phép chúng tôi cập nhật văn bản hiển thị bất cứ lúc nào theo yêu cầu. Cũng có thể nhấn mạnh một phần của văn bản [như xác định phím tắt] và giới hạn văn bản trên nhiều dòng

Cha mẹ của nhãn là thư mục gốc, có nghĩa là nó sẽ không bị giới hạn trong một khung hình duy nhất, tuy nhiên, toàn bộ cửa sổ gốc. Sau đó, chúng tôi sẽ đặt một văn bản đơn giản mà chúng tôi sẽ tự động thay đổi trong toàn bộ mã cho đến khi các nút số mà chúng tôi nhấp vào được hiển thị trên nhãn

Tkinter StringVar cho phép chúng tôi quản lý giá trị của tiện ích con như Nhãn hoặc Mục nhập hiệu quả hơn. Vùng chứa là một widget mà đối tượng StringVar có liên quan đến. Nếu chúng ta bỏ qua vùng chứa, nó sẽ mặc định là cửa sổ gốc và giá trị là giá trị ban đầu mặc định là một chuỗi rỗng

  1. mỏ neo. Tham số này kiểm soát vị trí của văn bản trong tiện ích và bao gồm nhiều không gian hơn văn bản yêu cầu. Mặc định là anchor=SE [widget sẽ nằm ở góc dưới cùng bên phải của khung]
  2. biến văn bản. Tham số này phải được đặt thành một đối tượng của lớp StringVar để chúng ta có thể truy xuất văn bản hiện tại từ tiện ích mục nhập

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng ta đã tạo một đối tượng của lớp StringVar. Sau đó, chúng tôi đã tạo nhãn cho cửa sổ bằng cách sử dụng tiện ích Nhãn chỉ định một số tham số như đối tượng của lớp Tk[], văn bản, neo, kiểu và kích thước phông chữ, biến văn bản, màu nền và màu nền trước

Sau đó, chúng tôi đã sử dụng phương thức pack[] với đối tượng của Nhãn và đặt giá trị của tham số mở rộng thành True. Tham số mở rộng chịu trách nhiệm mở rộng tiện ích mẹ

Đóng gói các nút trên cửa sổ

Tkinter cung cấp một tiện ích có tên Frame. Tiện ích này có ý nghĩa rất lớn trong việc nhóm và sắp xếp các tiện ích khác theo cách này hay cách khác thân thiện. Các khung hoạt động giống như các thùng chứa, chịu trách nhiệm sắp xếp vị trí của các vật dụng khác

Nó sử dụng các khu vực hình chữ nhật trên màn hình để sắp xếp bố cục và cung cấp phần đệm cho các vật dụng này

Chúng ta cũng có thể sử dụng khung làm lớp nền tảng để triển khai các tiện ích phức tạp

Cú pháp cho khung được hiển thị bên dưới

cú pháp

Thông số

  1. ParentWindow. Tham số này đại diện cho cửa sổ cha mẹ
  2. tùy chọn. Tham số này bao gồm danh sách các tùy chọn được sử dụng phổ biến nhất cho mã. Các tùy chọn này có thể được coi là các cặp khóa-giá trị được phân tách bằng dấu phẩy
  3. bg. Tham số này hiển thị màu nền phía sau nhãn và chỉ báo

Bây giờ chúng ta hãy xem xét đoạn mã sau thể hiện việc triển khai các khung trong dự án máy tính GUI

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng ta đã sử dụng tiện ích Frame[] để tạo khung cho cửa sổ. Chúng tôi cũng đã bao gồm tham số bg để làm đẹp khung và thêm màu nền. Sau đó, chúng tôi đã sử dụng phương thức pack[] với đối tượng của Khung để khung có thể mở rộng khi có khoảng trống. Sau đó, chúng tôi đã lặp lại quy trình tương tự cho ba khung hình khác

Thêm các nút vào Máy tính GUI

Thư viện Tkinter trong Python cung cấp một tiện ích được gọi là Nút. Tiện ích này sẽ cho phép chúng tôi thêm các nút vào máy tính GUI. Các nút này có thể hiển thị văn bản hoặc hình ảnh thực hiện mục tiêu của các nút. Chúng ta cũng có thể đính kèm một hàm hoặc một phương thức vào một nút được gọi tự động khi chúng ta nhấp vào nút

Bây giờ chúng ta hãy xem xét đoạn mã sau minh họa việc triển khai các tiện ích Nút

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng tôi đã tạo các nút khác nhau bằng cách sử dụng tiện ích Button[]. Đối với mỗi nút, chúng tôi đã chỉ định đối tượng của Khung định sẵn, đặt văn bản sẽ được hiển thị, kiểu và kích thước phông chữ, hình nổi, đường viền và lệnh. Sau đó, chúng tôi đã sử dụng phương thức pack[] để đặt từng nút cạnh nhau

Cuối cùng, chúng ta sẽ thêm phương thức mainloop[] để chạy cửa sổ

Tập tin. guCalci. py

Giải trình

Trong đoạn mã trên, chúng ta đã sử dụng phương thức mainloop[] cùng với đối tượng của lớp Tk[] để chạy cửa sổ

Quá trình viết mã của dự án 'GUI Calculator' cuối cùng đã hoàn thành. Bây giờ chúng ta có thể lưu tệp và chạy chương trình để xem nó có hoạt động không

Tôi có thể tạo máy tính bằng Python không?

Lập trình Python là một cách thú vị để học cách viết mã cho trẻ em từ 8-18 tuổi. Bạn có thể tạo một máy tính cơ bản để thực hiện các phép toán số học, bao gồm cộng, trừ, nhân và chia .

Làm cách nào để tạo máy tính kỹ thuật số bằng Python?

Cách tạo Máy tính trong Python Tkinter .
Tại sao sử dụng Tkinter để xây dựng GUI Python?
1] Nhập Tkinter
2] Tạo Bộ chứa Tkinter
3] Xác định chức năng Tkinter Widget
4] Thiết kế ứng dụng
5] Chạy ứng dụng

Làm cách nào để tạo GUI máy tính trong Python?

Python cung cấp nhiều tùy chọn để phát triển GUI [Giao diện người dùng đồ họa]. .
Nhập mô-đun – tkinter
Tạo cửa sổ chính [vùng chứa]
Thêm bất kỳ số lượng vật dụng nào vào cửa sổ chính
Áp dụng Trình kích hoạt sự kiện trên các vật dụng

Chủ Đề