Topic : File Handling
#File name : [Link]
import sqlite3
def Database():
global conn, cursor
conn = [Link]('db_member.db')
cursor = [Link]()
[Link]("CREATE TABLE IF NOT EXISTS `member` (mem_id INTEGER PRIMARY KEY AUTOINCREMENT
NOT NULL, firstname TEXT, lastname TEXT, address TEXT, username TEXT, password TEXT)")
#=========================================================================================
#File name : [Link]
from tkinter import*
import [Link] as ttk
import [Link] as tkMessageBox
import connection
root = Tk()
[Link]("Python - Save Data To Table (File Handling)")
screen_width = root.winfo_screenwidth()
screen_height = root.winfo_screenheight()
width = 900
height = 500
x = (screen_width/2) - (width/2)
y = (screen_height/2) - (height/2)
[Link]('%dx%d+%d+%d' % (width, height, x, y))
[Link](0, 0)
#==================================METHODS============================================
def insertData():
if [Link]() == "" or [Link]() == "" or [Link]() == "" or [Link]() == "" or
[Link]() == "":
txt_result.config(text="Please complete the required field!", fg="red")
else:
[Link]()
[Link]("INSERT INTO `member` (firstname, lastname, address, username, password)
VALUES(?, ?, ?, ?, ?)", (str([Link]()), str([Link]()), str([Link]()), str([Link]()),
str([Link]())))
[Link]()
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]()
[Link]()
txt_result.config(text="Saved a data!", fg="green")
displayData()
def displayData():
[Link](*tree.get_children())
[Link]()
[Link]("SELECT * FROM `member` ORDER BY `lastname` ASC")
fetch = [Link]()
for data in fetch:
[Link]('', 'end', values=(data[1], data[2], data[3], data[4], '****'))
[Link]()
[Link]()
def Exit():
result = [Link]('Python - Save Data To Table', 'Are you sure you want to exit?',
icon="warning")
if result == 'yes':
[Link]()
exit()
#==================================VARIABLES==========================================
FIRSTNAME = StringVar()
LASTNAME = StringVar()
GENDER = StringVar()
ADDRESS = StringVar()
USERNAME = StringVar()
PASSWORD = StringVar()
#==================================FRAME==============================================
Top = Frame(root, width=900, height=50, bd=8, relief="raise")
[Link](side=TOP)
Left = Frame(root, width=600, height=500, bd=8, relief="raise")
[Link](side=LEFT)
Right = Frame(root, width=300, height=500, bd=8, relief="raise")
[Link](side=RIGHT)
Forms = Frame(Right, width=300, height=450)
[Link](side=TOP)
Buttons = Frame(Right, width=300, height=100, bd=8, relief="raise")
[Link](side=BOTTOM)
RadioGroup = Frame(Forms)
#==================================LABEL WIDGET=======================================
txt_title = Label(Top, width=900, font=('arial', 24), text = "Python - Save Data To Table")
txt_title.pack()
txt_firstname = Label(Forms, text="Firstname:", font=('arial', 16), bd=15)
txt_firstname.grid(row=0, stick="e")
txt_lastname = Label(Forms, text="Lastname:", font=('arial', 16), bd=15)
txt_lastname.grid(row=1, stick="e")
txt_address = Label(Forms, text="Address:", font=('arial', 16), bd=15)
txt_address.grid(row=2, stick="e")
txt_username = Label(Forms, text="Username:", font=('arial', 16), bd=15)
txt_username.grid(row=3, stick="e")
txt_password = Label(Forms, text="Password:", font=('arial', 16), bd=15)
txt_password.grid(row=4, stick="e")
txt_result = Label(Buttons)
txt_result.pack(side=TOP)
#==================================ENTRY WIDGET=======================================
firstname = Entry(Forms, textvariable=FIRSTNAME, width=30)
[Link](row=0, column=1)
lastname = Entry(Forms, textvariable=LASTNAME, width=30)
[Link](row=1, column=1)
address = Entry(Forms, textvariable=ADDRESS, width=30)
[Link](row=2, column=1)
username = Entry(Forms, textvariable=USERNAME, width=30)
[Link](row=3, column=1)
password = Entry(Forms, textvariable=PASSWORD, show="*", width=30)
[Link](row=4, column=1)
#==================================BUTTONS WIDGET=====================================
btn_create = Button(Buttons, width=10, text="Save", command=insertData)
btn_create.pack(side=LEFT)
btn_exit = Button(Buttons, width=10, text="Exit", command=Exit)
btn_exit.pack(side=LEFT)
#==================================LIST WIDGET========================================
scrollbary = Scrollbar(Left, orient=VERTICAL)
scrollbarx = Scrollbar(Left, orient=HORIZONTAL)
tree = [Link](Left, columns=("Firstname", "Lastname", "Address", "Username", "Password"),
selectmode="extended", height=500, yscrollcommand=[Link], xscrollcommand=[Link])
[Link](command=[Link])
[Link](side=RIGHT, fill=Y)
[Link](command=[Link])
[Link](side=BOTTOM, fill=X)
[Link]('Firstname', text="Firstname", anchor=W)
[Link]('Lastname', text="Lastname", anchor=W)
[Link]('Address', text="Address", anchor=W)
[Link]('Username', text="Username", anchor=W)
[Link]('Password', text="Password", anchor=W)
[Link]('#0', stretch=NO, minwidth=0, width=0)
[Link]('#1', stretch=NO, minwidth=0, width=80)
[Link]('#2', stretch=NO, minwidth=0, width=120)
[Link]('#3', stretch=NO, minwidth=0, width=80)
[Link]('#4', stretch=NO, minwidth=0, width=150)
[Link]('#5', stretch=NO, minwidth=0, width=120)
[Link]()
#==================================INITIALIZATION=====================================
displayData()
if __name__ == '__main__':
[Link]()