Farih.co.id
Home Programming Membuat Aplikasi To-Do Menggunakan Python

Membuat Aplikasi To-Do Menggunakan Python

woman hand writing a plan on diary

Aplikasi To-Do, terkadang disebut sebagai pengelola tugas, memungkinkan pengguna mengatur dan mengelola tugas mereka dengan lebih efektif. Anda dapat membuat daftar tugas harian atau mingguan, menetapkan tenggat waktu dan pengingat, memprioritaskannya, melacak kemajuannya, dan membaginya dengan orang lain.


Aplikasi To-Do memungkinkan Anda mengelola waktu, meningkatkan produktivitas, dan mengurangi stres. Jadi, bagaimana Anda bisa membuatnya dengan Python?


Modul Tkinter

Anda dapat menggunakan Tkinter untuk membuat aplikasi To-Do. Tkinter memungkinkan Anda membuat aplikasi desktop. Ini menawarkan berbagai widget seperti tombol, label, dan kotak teks yang memudahkan pengembangan aplikasi. Beberapa aplikasi yang dapat Anda kembangkan menggunakan Tkinter termasuk aplikasi Kamus, Pemutar Musik, alat Konversi Berat, dan permainan Word Jumble.

Untuk menginstal Tkinter, buka terminal dan jalankan:

 pip install tkinter 

Cara Membangun Aplikasi To-Do Menggunakan Python

Impor modul Tkinter dan inisialisasi jendela root. Menggunakan konfigurasikan() fungsi, mengatur warna latar belakang. Atur juga judul dan ukuran jendela.

 from tkinter import *
from tkinter.font import Font

root = Tk()
root.configure(background="#A020f0")
root.title('To-Do List Application')
root.geometry("750x500")

Tentukan gaya font dan widget bingkai. Frame bertindak sebagai wadah dan bertanggung jawab untuk mengatur posisi widget lainnya. Setel jendela induk tempat Anda ingin meletakkannya dan berikan padding vertikal 10.

Tentukan widget kotak daftar. Komponen ini menampilkan daftar item untuk dipilih pengguna. Atur jendela induk tempat Anda ingin meletakkannya, gaya font, lebar, tinggi, warna latar belakang, lebar batas, dan warna font. Selain itu, atur ketebalan sorotan fokus, warna latar belakang yang seharusnya saat dipilih, dan tampilan garis aktif sebagai Tidak ada.

Atur daftar dengan meletakkannya di sisi kiri dan beri tahu untuk mengisi ruang ekstra di kedua arah.

 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)

Tentukan bilah gulir yang akan ditampilkan program di sisi kanan bingkai, mengisi ruang ekstra di kedua arah. Menggunakan konfigurasi() metode untuk mengikat bilah gulir ke widget kotak daftar yang Anda tentukan sebelumnya. Pada pengaturan nilai perintah yscroll sebagai my_scrollbar.set itu mendapatkan posisi scrollbar saat ini pada interaksi pengguna.

Pada pengaturan parameter perintah sebagai my_list.yview, gerakan bilah gulir ditautkan ke fungsi atas dan bawah. Jadi, saat pengguna berinteraksi dengan bilah gulir, tampilan kotak daftar akan berubah.

 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)

Tentukan widget entri untuk menerima tugas sebagai masukan dari pengguna. Atur jendela induk tempat Anda ingin meletakkannya, gaya font, lebar, dan warna latar belakang. Atur dengan menambahkan padding 20 pada arah vertikal.

Tentukan bingkai untuk mengatur tombol Anda. Tempatkan mereka di jendela root dan beri warna latar belakang. Atur bingkai dengan padding 20 dalam arah vertikal juga.

 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)

Tentukan fungsi, hapus_item(). Melewati JANGKAR parameter ke fungsi hapus untuk menghapus item yang dipilih dari daftar.

 def delete_item():
    my_list.delete(ANCHOR)

Tentukan fungsi, Tambahkan Barang(). Menggunakan mendapatkan() berfungsi untuk mengambil nilai input oleh pengguna ke akhir daftar. Jika daftar kosong, elemen yang ditambahkan akan menjadi entri pertama dalam daftar. Setelah menambahkan elemen ke daftar, Anda harus menghapusnya dari widget entri. Gunakan fungsi hapus untuk menghapus teks yang disisipkan dari awal hingga akhir panjangnya.

 def add_item():
    my_list.insert(END, my_entry.get())
    my_entry.delete(0, END)

Tentukan fungsi, cross_off_item(). Menggunakan item_config() metode untuk mengubah warna font tugas item yang dipilih dalam daftar menjadi warna redup, Anda telah mencoret item tersebut. Kosongkan pilihan yang Anda buat sekarang dari awal hingga akhir panjangnya.

 def cross_off_item():
    my_list.itemconfig(my_list.curselection(), fg="#dedede")
    my_list.selection_clear(0, END)

Tentukan fungsi, uncross_item(). Mirip dengan fungsi di atas, ubah warna tugas yang dipilih kembali ke aslinya dan hapus pilihan sepenuhnya.

 def uncross_item():
    my_list.itemconfig(my_list.curselection(), fg="#5c4033")
    my_list.selection_clear(0, END)

Tentukan fungsi, hapus_silang(). Tentukan variabel penghitung dan ulangi hingga kurang dari ukuran daftar. Jika warna font item redup, hapus item tersebut dari daftar. Jika tidak, lanjutkan iterasi dengan menambahkan variabel penghitung.

 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

Tentukan lima tombol: hapus, tambah, coret, batalkan silang, dan hapus silang. Tempatkan tombol di bingkai tombol yang Anda buat sebelumnya. Atur teks yang harus ditampilkan setiap tombol, fungsi yang harus dijalankan saat Anda mengkliknya, warna latar belakangnya, dan gaya font.

 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"))

Atur tombol menggunakan pengelola kisi dalam satu baris dan lima kolom. Tetapkan padding 0 pada arah horizontal untuk membagi jarak antar tombol,

 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)

Itu mainloop() fungsi memberi tahu Python untuk menjalankan loop acara Tkinter dan mendengarkan acara sampai Anda menutup jendela.

 root.mainloop() 

Gabungkan semua kode dan jangan pernah melewatkan tugas apa pun menggunakan aplikasi To-Do List yang efisien ini.

Keluaran Aplikasi To-Do Menggunakan Python

Saat menjalankan program di atas, sebuah jendela muncul di mana Anda dapat memasukkan tugas yang ingin Anda selesaikan. Saat menambahkan tugas dan menekan Tambahkan Barang tombol, tugas akan ditambahkan ke layar.

To Do Aplikasi Tambahkan item demo

Saat memilih salah satu tugas dengan mouse/keyboard dan mengklik Coret Item tombol, tugas yang dipilih berubah warna dan redup.

To Do Aplikasi mencoret demo item

Saat memilih item yang disilangkan dan mengklik Batalkan Item tombol, program menyoroti tugas kembali ke warna aslinya.

Untuk Melakukan Aplikasi uncross item demo

Saat mengklik Hapus Dicoret tombol, program menghapus tugas yang dicoret. Saat memilih item apa saja dan mengklik Hapus Barang tombol, item yang dipilih akan dihapus.

Untuk Melakukan Aplikasi menghapus lintas item demo

Aplikasi yang Dapat Anda Bangun Menggunakan Python untuk Meningkatkan Produktivitas Anda

Anda dapat membuat aplikasi seperti RescueTime yang melacak berapa banyak waktu yang dihabiskan pengguna untuk aplikasi tertentu. Aplikasi semacam itu dapat membantu Anda menemukan situs web mana yang paling mengganggu Anda. Selain itu, Anda dapat mengambil inspirasi dari Trello untuk membuat papan dengan daftar tugas, tenggat waktu, dan pengingat.

Aplikasi musik yang memainkan playlist yang dirancang khusus dapat membantu pengguna berkonsentrasi dan fokus pada pekerjaan. Anda bahkan dapat mengotomatiskan program GUI untuk melakukan tugas berulang seperti proses masuk dan skrip untuk berinteraksi dengan desktop.

Comment
Share:

Leave a Reply

Your email address will not be published. Required fields are marked *

Ad