Open Opakeeperz opened 4 weeks ago
from tkinter import Entry, Label, LabelFrame, Tk, W, CENTER, E, Button, PhotoImage from tkinter.ttk import Combobox, Treeview, Notebook, Frame from tkinter.messagebox import askyesno import sqlite3 class Cursoreasy: def __init__(self, cursor, Connection): self.c = cursor self.conn = Connection def get_database_contents(self): self.c.execute("SELECT * FROM workers") return self.c.fetchall() def insert_into_database(self, name : str, age : int, gender : str, job : str, floornumber : int): self.c.execute("""INSERT INTO workers VALUES ( "{}", {}, "{}", "{}", {} )""".format(name, age, gender, job, floornumber)) self.conn.commit() def rset(self): if askyesno('PyCC', 'Are you SURE you want to reset the database'): self.c.execute("DROP TABLE workers") self.c.execute("""CREATE TABLE IF NOT EXISTS workers ( Name TEXT, Age INTEGER, Gender TEXT, Job TEXT, Floornumber INTEGER )""") self.conn.commit() ## TK ## root = Tk() root.geometry("1300x500") ## CONN, CURSOR, AND CREATE DATABASE TABLE ## Conn = sqlite3.connect("Database.db") c = Conn.cursor() c.execute("""CREATE TABLE IF NOT EXISTS workers ( Name TEXT, Age INTEGER, Gender TEXT, Job TEXT, Floornumber INTEGER )""") ## NOTEBOOK ## my_ntbk = Notebook(root) my_ntbk.pack(padx=10, pady=10) ## TABS OF NOTEBOOK ## Treetab = Frame(root) my_ntbk.add(Treetab, text="Contents of Database") CredatabaseTab = Frame(root) my_ntbk.add(CredatabaseTab, text="Record worker") ResetTab = Frame(root) my_ntbk.add(ResetTab, text="Reset database") ## TREE ## tree = Treeview(Treetab) ## DEF COLUMNS ## tree['columns'] = ("Name", "Age", "Gender", "Job", "Floor no.") ## FORMAT COLUMNS ## tree.column("#0", width=120, minwidth=25) tree.column("Name", anchor=W, width=120) tree.column("Age", anchor=CENTER, width=120) tree.column("Gender", anchor=CENTER, width=120) tree.column("Job", anchor=CENTER, width=120) tree.column("Floor no.", anchor=E, width=120) ## HEADINGS ## tree.heading("#0", text="Label") tree.heading("Name", text="Name") tree.heading("Age", text="Age") tree.heading("Gender", text="Gender") tree.heading("Job", text="Job of person") tree.heading("Floor no.", text="Main Floor number") ## INSERT LOOP ## insertl = Cursoreasy(c, Conn) for count, i in enumerate(insertl.get_database_contents()): tree.insert('', 'end', count, text="Parent", values=(i[0], i[1], i[2], i[3], i[4])) tree.pack(padx=20, pady=20) ## RESET TAB CONTENTS ## rsetbtn = Button(ResetTab, text="☣\nReset database\n⚠", command=insertl.rset, padx=500, pady=100, font=("Arial Unicode MS", 72, "normal")) rsetbtn.pack(padx=20, pady=20) root.mainloop()
Current code
ISSUES