Skip to content

CGreenP/GetZ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

GetZ

A GUI To-Do List with Python and SQLite3.

Introduction:

In this project, we'll create a feature-rich to-do list desktop application using Python libraries like tkinter, tkcalendar, sqlite3, APScheduler, random, time, and datetime. The app allows adding, deleting, and sorting tasks. Tasks with date and time reminders can be added and managed efficiently.

Prerequisite:

  1. Download and Install Python 3 (64 bit) Download Link: https://www.python.org/downloads/windows/
  2. Open CMD/PowerShell and type the following commands to install the required libraries to run the application.
  • tkcalendar
pip install tkcalendar
  • APScheduler
pip install APScheduler
  1. After installing the required libraries, go to the src folder and double-click on the GetZ.py file to run the application.

ARCHITECTURE:

The project uses a database to save to entries in To-Do List and Tkinter for GUI. When we enter a task in To-Do List and select a date, the task is saved in database. When we enter the time, the task get updated. When we delete the task, it's get deleted from the database. The APScheduler checks if the current time and the time given in the database is equal or not. If they are equal, We will get a pop-up.

The entire project is done in generally two parts. They are – (a) GUI part And (b) Database part.

(a) GUI Part:

(i) At first we have created our main window(root) using tkinter module. Then we added all buttons, labels, listbox etc. in it using tkinter.

(ii) Then we added a statusbar in the root window for loading the application using time module.

(iii) Then we added a pop-up during adding task so that the user can add timer with the task to remind him about that particular task in that particular time. This pop-up has three buttons in it - a. Dateentry, b. Time and c. Exit. The dateentry button will accept date from user from a calendar in it. This calendar is created using tkcalendar. Next, the time button is there to accept time from user. And finally, the Exit button is there to exit from this pop-up.

(iv) Next, we made another pop-up which will remind user about a task in the particular time which user chose. For this purpose we have used datetime and apscheduler module.

(b) Database Part:

(i) When the user adds a task and don’t not set a reminder, the task is added. When the user adds a task and set a reminder, after selecting the date from the calendar, the task is added to the database with the default time 12 midnight. When the user selects the time, that task is updated.

(ii) When the user deletes one task, that task is deleted from the database.

(iii) When the user deletes all the tasks, all the task is deleted from the database.

(iv) When the user sorts the list of task, all the tasks are fetched from the database and then they are sorted. After sorting the tasks, they are displayed.

Sample Output:

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

Releases

No releases published

Packages

No packages published

Languages