This Desktop GUI APP built with Python using the Tkinter library opens URL links scheduled by the user.
In the beginning of 2021, I was taking online classes because of the COVID-19 pandemic. Between class breaks, I would sit away from my laptop to relax but meanwhile found it annoying to check the time constantly to make sure I would not be late for class. Therefore, I was thinking about making an app to open class links aund me in case I'm a little far from my laptop.
- Enter all inputs. Select a day, hour, minute, and enter a valid URL address. If no valid link is entered, an error window will pop up.
- After entering,
Add
to schedule. All appointments can be seen in the table at the bottom. - To edit, select the row in the table and the corresponding entries will appear in the entry boxes again. After editing,
Save Changes
to save all the changes you made. - To delete an appointment, select the row in the table and
Delete
. - To open the web browser manually, select the row and
Open
. - To turn on or off bell, click the radio button
yes
orno
.
- The web browsers must be a URL address. for example, www.google.com won't work but https://google.com will work.
- The time (hour & minute) must be consistent with the time zone of your computer.
Changes I made since my first version in 2021:
- Made the schedule sync with the database so there's no need to restart the program if the database is changed.
- Made the app throw an error if any entry is missing.
- Changed "Weekday" to "Day" to add Saturday and Sunday as options.
- Changed text entry boxes to dropdown menu so that the program doesn't have to check user inputs, and it's more user-friendly.
- Made bell a choice for the user in case that the user doesn't want any sound.
- Replaced
ListBox
withTreeview
to make it more user-friendly by showing the user what each column represents. - Added a
Instructions
button for the user to understand how this app works. - Used MVC model for easier and faster future modification.
Drawbacks:
- Weekday input is from 1 to 5, which is not user-friendly at all.
- It doesn't throw an error if any entry is missing.
- The user has to restart the program if they add, delete, or change anything in order to update the schedule.
- The schedule table is hard to read without column headers.