Membangun Aplikasi To-Do List Modern dengan Python dan PyQt5: Dari Nol hingga Jadi!
PythonCode ID - Selamat datang kembali di PythonCodeID - Di tengah kesibukan sehari-hari, memiliki daftar tugas atau to-do list adalah penyelamat. Aplikasi ini membantu kita tetap terorganisir, fokus, dan produktif. Daripada hanya menggunakan aplikasi yang sudah ada, mengapa tidak mencoba membuatnya sendiri? Ini adalah proyek yang sangat baik untuk mengasah kemampuan pemrograman Anda.
Dalam artikel ini, kita akan membedah langkah demi langkah cara membuat aplikasi To-Do List yang fungsional dan modern menggunakan Python, salah satu bahasa pemrograman paling populer, dan pustaka PyQt5 untuk antarmuka grafisnya (GUI). Hasil akhirnya bukan sekadar aplikasi biasa, tetapi aplikasi yang mampu mengingat semua tugas Anda bahkan setelah ditutup dan dibuka kembali. Keren bukaaan....?
Peralatan yang Dibutuhkan
Sebelum memulai, pastikan "peralatan" Anda sudah siap. Anda hanya memerlukan dua hal:
- Python: Pastikan Python sudah terinstal di komputer Anda.
- PyQt5: Ini adalah pustaka yang akan kita gunakan untuk membangun semua elemen visual. Jika belum terinstal, buka Terminal atau Command Prompt, lalu ketik perintah sederhana ini:
pip install PyQt5
Sudah siap? Yuk.. Mari kita mulai merakit aplikasi kita
Langkah 1: Merancang Kerangka Aplikasi
Setiap bangunan membutuhkan fondasi yang kokoh. Dalam PyQt5, fondasi aplikasi kita terdiri dari beberapa bagian penting:
QApplication
: Objek inti yang mengelola semua proses aplikasi.QMainWindow
: Jendela utama tempat kita akan meletakkan semua komponen lain.
Kita akan membungkus semua logika dan tampilan aplikasi kita dalam sebuah kelas, misalnya TodoListApp
, yang mewarisi sifat-sifat dari QMainWindow
.
Langkah 2: Membangun Antarmuka (UI)
Sekarang bagian yang menyenangkan: mendesain tampilan. Kita akan mengatur beberapa komponen atau widget untuk membentuk antarmuka aplikasi:
QLabel
: Untuk menampilkan teks judul yang menarik.QLineEdit
: Kotak input tempat pengguna mengetik tugas baru mereka.QPushButton
: Tombol interaktif seperti "Tambah", "Hapus", dan "Tandai Selesai".QListWidget
: Area utama untuk menampilkan daftar semua tugas.
Untuk menatanya agar rapi, kita menggunakan Layout Manager seperti QVBoxLayout
(menata widget secara vertikal) dan QHBoxLayout
(menata widget secara horizontal).
Langkah 3: Memberi "Nyawa" pada Tombol
Tampilan tanpa fungsi tentu tidak ada artinya. Di PyQt5, kita menggunakan mekanisme elegan yang disebut Signals dan Slots. Sederhananya:
- Signal: Sebuah peristiwa yang terjadi (misalnya, tombol diklik).
- Slot: Sebuah fungsi yang akan dijalankan sebagai respons terhadap sinyal tersebut.
Kita menghubungkan sinyal dari tombol ke slot yang telah kita definisikan:
self.add_button.clicked.connect(self.add_task)
Fungsi add_task
akan mengambil teks dari QLineEdit
, menambahkan tanggal dan jam saat ini, lalu menampilkannya di QListWidget
. Begitu pula dengan fungsi delete_task
dan mark_task_done
.
Langkah 4: Memberi "Ingatan" Abadi pada Aplikasi
Ini adalah fitur andalan dari aplikasi kita. Bagaimana caranya agar daftar tugas tidak hilang saat aplikasi ditutup? Jawabannya adalah dengan menyimpannya ke dalam sebuah file.
- Menyimpan Tugas: Setiap kali ada perubahan (tugas ditambah, dihapus, atau ditandai), kita akan memanggil fungsi
save_tasks()
. Fungsi ini akan membaca semua item diQListWidget
, mengubahnya menjadi format data yang mudah dibaca bernama JSON, lalu menyimpannya ke dalam sebuah file bernamatasks_data.json
.
- Memuat Tugas: Saat aplikasi pertama kali dijalankan, kita memanggil fungsi
load_tasks()
. Fungsi ini akan mencari filetasks_data.json
. Jika ada, ia akan membaca isinya dan menampilkan kembali semua tugas yang tersimpan ke dalamQListWidget
, lengkap dengan status "selesai" jika sebelumnya sudah ditandai.
Dengan cara ini, aplikasi kita memiliki "ingatan" jangka panjang!
Langkah 5: Sentuhan Akhir dengan "Stylesheet"
Agar aplikasi tidak terlihat monoton, PyQt5 menyediakan fitur stylesheet yang sangat mirip dengan CSS pada pengembangan web. Kita bisa mendefinisikan warna latar belakang, warna tombol, ukuran font, dan properti visual lainnya untuk memberikan tampilan yang profesional dan modern.
![]() |
Membangun Aplikasi To-Do List Modern dengan Python |
Kode Lengkap untuk Anda Coba
Berikut adalah kode lengkap dari aplikasi yang telah kita bahas. Salin kode ini, simpan sebagai file .py
, dan jalankan untuk melihat hasilnya secara langsung!
Kesimpulan
Anda baru saja melihat bagaimana Python dan PyQt5 dapat disatukan untuk menciptakan aplikasi desktop yang bermanfaat dan terlihat profesional. Anda telah belajar tentang struktur dasar aplikasi, tata letak, interaktivitas tombol, hingga cara menyimpan data secara permanen Ulasan PythonCode ID dalam Membangun Aplikasi To-Do List Modern dengan Python kiranya dapat membantu Anda dalam penguasaan python tingkat lanjut
Dari sini, kemungkinannya tidak terbatas. Anda bisa menambahkan fitur baru seperti prioritas tugas, kategori, atau bahkan notifikasi pengingat. Selamat mencoba dan selamat berkarya ampai jumpa di artikel PyCoding ID berikutnya
0 Komentar