Xây dựng ứng dụng việc cần làm bằng Python
Ứng dụng To-Do, đôi khi được gọi là trình quản lý tác vụ, cho phép người dùng sắp xếp và quản lý tác vụ của họ hiệu quả hơn. Bạn có thể tạo danh sách các nhiệm vụ hàng ngày hoặc hàng tuần, đặt thời hạn và lời nhắc, ưu tiên chúng, theo dõi tiến độ của chúng và chia sẻ chúng với những người khác.
Ứng dụng Việc cần làm cho phép bạn quản lý thời gian, tăng năng suất và giảm căng thẳng. Vì vậy, làm thế nào bạn có thể xây dựng một trong Python?
Mục Lục
Mô-đun Tkinter
Bạn có thể sử dụng Tkinter để xây dựng ứng dụng Việc cần làm. Tkinter cho phép bạn tạo các ứng dụng máy tính để bàn. Nó cung cấp nhiều tiện ích như nút, nhãn và hộp văn bản giúp dễ dàng phát triển ứng dụng. Một số ứng dụng bạn có thể phát triển bằng Tkinter bao gồm ứng dụng Từ điển, Trình phát nhạc, công cụ Chuyển đổi trọng lượng và trò chơi Word Jumble.
Để cài đặt Tkinter, hãy mở terminal và chạy:
pip install tkinter
Cách xây dựng ứng dụng việc cần làm bằng Python
Nhập mô-đun Tkinter và khởi tạo cửa sổ gốc. Sử dụng cấu hình() chức năng, đặt màu nền. Cũng đặt tiêu đề và kích thước của cửa sổ.
from tkinter import *
from tkinter.font import Fontroot = Tk()
root.configure(background="#A020f0")
root.title('To-Do List Application')
root.geometry("750x500")
Xác định kiểu phông chữ và tiện ích khung. Một khung đóng vai trò là vật chứa và có nhiệm vụ sắp xếp vị trí của các vật dụng khác. Đặt cửa sổ chính mà bạn muốn đặt nó vào và cung cấp cho nó phần đệm dọc là 10.
Xác định tiện ích hộp danh sách. Thành phần này hiển thị danh sách các mục để người dùng lựa chọn. Đặt cửa sổ mẹ mà bạn muốn đặt nó vào, kiểu phông chữ, chiều rộng, chiều cao, màu nền, chiều rộng đường viền và màu phông chữ. Ngoài ra, hãy đặt độ dày của điểm nổi bật tiêu điểm, màu nền cần có khi được chọn và hình thức của đường hiện hoạt là Không có.
Sắp xếp danh sách bằng cách đặt nó ở phía bên trái và yêu cầu nó lấp đầy bất kỳ khoảng trống thừa nào theo cả hai hướng.
my_font = Font(family="Arial", size=22, weight="bold")
my_frame = Frame(root)
my_frame.pack(pady=10)my_list = Listbox(my_frame, font=my_font, width=40, height=7, bg="#cf9fff", bd=0, fg="#5c4033", highlightthickness=0, selectbackground="#ff0000", activestyle="none")
my_list.pack(side=LEFT, fill=BOTH)
Xác định một thanh cuộn mà chương trình sẽ hiển thị ở phía bên phải của khung, lấp đầy mọi khoảng trống thừa theo cả hai hướng. Sử dụng cấu hình() phương pháp để liên kết thanh cuộn với tiện ích hộp danh sách mà bạn đã xác định trước đó. Khi thiết lập giá trị của lệnh yscroll BẰNG my_scrollbar.set nó nhận vị trí hiện tại của thanh cuộn khi tương tác với người dùng.
Khi đặt tham số lệnh là my_list.yview, chuyển động của thanh cuộn được liên kết với chức năng lên và xuống. Vì vậy, khi người dùng tương tác với thanh cuộn, chế độ xem hộp danh sách sẽ thay đổi tương ứng.
my_scrollbar = Scrollbar(my_frame)
my_scrollbar.pack(side=RIGHT, fill=BOTH)
my_list.config(yscrollcommand=my_scrollbar.set)
my_scrollbar.config(command=my_list.yview)
Xác định tiện ích mục nhập để chấp nhận tác vụ dưới dạng đầu vào từ người dùng. Đặt cửa sổ mẹ mà bạn muốn đặt nó vào, kiểu phông chữ, chiều rộng và màu nền. Sắp xếp nó bằng cách thêm phần đệm 20 theo hướng dọc.
Xác định một khung để tổ chức các nút của bạn. Đặt chúng trong cửa sổ gốc và tạo màu nền cho nó. Sắp xếp khung với phần đệm 20 theo hướng thẳng đứng.
my_entry = Entry(root, font=("Arial", 22), width=26, bg='#cf9fff')
my_entry.pack(pady=20)button_frame = Frame(root, bg='#a020f0')
button_frame.pack(pady=20)
Xác định một chức năng, xóa mục(). Vượt qua MỎ NEO tham số cho chức năng xóa để xóa mục đã chọn khỏi danh sách.
def delete_item():
my_list.delete(ANCHOR)
Xác định một chức năng, add_item(). Sử dụng lấy() chức năng lấy giá trị do người dùng nhập vào đến cuối danh sách. Nếu danh sách trống, phần tử được thêm vào sẽ trở thành mục đầu tiên trong danh sách. Sau khi thêm phần tử vào danh sách, bạn cần xóa phần tử đó khỏi tiện ích mục nhập. Sử dụng chức năng xóa để xóa văn bản đã chèn từ đầu đến cuối độ dài của nó.
def add_item():
my_list.insert(END, my_entry.get())
my_entry.delete(0, END)
Xác định một chức năng, cross_off_item(). Sử dụng item_config() phương pháp thay đổi màu phông chữ của nhiệm vụ mục đã chọn trong danh sách thành màu nhạt, bạn đã gạch bỏ mục đó. Xóa lựa chọn bạn đã thực hiện từ đầu đến cuối độ dài của nó.
def cross_off_item():
my_list.itemconfig(my_list.curselection(), fg="#dedede")
my_list.selection_clear(0, END)
Xác định một chức năng, uncross_item(). Tương tự như chức năng trên, đổi màu của tác vụ đã chọn về màu ban đầu và xóa hoàn toàn vùng chọn.
def uncross_item():
my_list.itemconfig(my_list.curselection(), fg="#5c4033")
my_list.selection_clear(0, END)
Xác định một chức năng, delete_crossed(). Xác định một biến đếm và lặp lại cho đến khi nó nhỏ hơn kích thước của danh sách. Nếu màu phông chữ của mục mờ nhạt, hãy xóa mục đó khỏi danh sách. Nếu không, hãy tiếp tục lặp lại bằng cách tăng biến đếm.
def delete_crossed():
count = 0 while count < my_list.size():
if my_list.itemcget(count, "fg") == "#dedede":
my_list.delete(my_list.index(count))
else:
count += 1
Xác định năm nút: xóa, thêm, gạch chéo, bỏ gạch chéo và xóa gạch chéo. Đặt các nút trong khung nút bạn đã tạo trước đó. Đặt văn bản mà mỗi nút sẽ hiển thị, chức năng sẽ chạy khi bạn nhấp vào, màu nền và kiểu phông chữ của nút.
delete_button = Button(button_frame, text="Delete Item", command=delete_item, bg="#e7305b", font=("arial", 12, "bold"))
add_button = Button(button_frame, text="Add Item", command=add_item, bg="#e7305b", font=("arial", 12, "bold"))
cross_off_button = Button(button_frame, text="Cross Off Item", command=cross_off_item, bg="#e7305b", font=("arial", 12, "bold"))
uncross_button = Button(button_frame, text="Uncross Item", command=uncross_item, bg="#e7305b", font=("arial", 12, "bold"))
delete_crossed_button = Button(button_frame, text="Delete Crossed", command=delete_crossed, bg="#e7305b", font=("arial",12, "bold"))
Sắp xếp các nút bằng trình quản lý lưới trong một hàng và năm cột. Đặt phần đệm 0 theo hướng ngang để phân bổ một số khoảng cách giữa các nút,
delete_button.grid(row=0, column=0)
add_button.grid(row=0, column=1, padx=20)
cross_off_button.grid(row=0, column=2)
uncross_button.grid(row=0, column=3, padx=20)
delete_crossed_button.grid(row=0, column=4)
Các vòng lặp chính() hàm yêu cầu Python chạy vòng lặp sự kiện Tkinter và lắng nghe các sự kiện cho đến khi bạn đóng cửa sổ.
root.mainloop()
Đặt tất cả mã lại với nhau và không bao giờ bỏ lỡ bất kỳ tác vụ nào bằng ứng dụng Danh sách việc cần làm hiệu quả này.
Đầu ra của ứng dụng việc cần làm bằng Python
Khi chạy chương trình trên, một cửa sổ xuất hiện trong đó bạn có thể nhập các nhiệm vụ bạn muốn hoàn thành. Khi thêm nhiệm vụ và nhấn nút Thêm mục nút, tác vụ sẽ được thêm vào màn hình.
Khi chọn bất kỳ tác vụ nào bằng chuột/bàn phím và nhấp vào Gạch bỏ mục nút, tác vụ đã chọn sẽ thay đổi màu sắc và mờ đi.
Khi chọn mục gạch chéo và nhấp vào Bỏ qua mục chương trình sẽ đánh dấu nhiệm vụ trở lại màu ban đầu.
Khi nhấp vào Xóa gạch chéo thì chương trình sẽ xóa nhiệm vụ bị gạch bỏ. Khi chọn bất kỳ mục nào và nhấp vào Xóa mục nút, mục đã chọn sẽ bị xóa.
Các ứng dụng bạn có thể xây dựng bằng Python để tăng năng suất của bạn
Bạn có thể xây dựng các ứng dụng như RescueTime để theo dõi lượng thời gian người dùng dành cho ứng dụng nào. Những ứng dụng như vậy có thể giúp bạn khám phá những trang web nào khiến bạn mất tập trung nhất. Ngoài ra, bạn có thể lấy cảm hứng từ Trello để tạo bảng có danh sách việc cần làm, thời hạn và lời nhắc.
Một ứng dụng nghe nhạc phát danh sách nhạc được thiết kế đặc biệt có thể giúp người dùng tập trung và tập trung vào công việc. Bạn thậm chí có thể tự động hóa các chương trình GUI để thực hiện các tác vụ lặp đi lặp lại như quy trình đăng nhập và tập lệnh để tương tác với máy tính để bàn.