prodevans / LEAP2.0

Leap 2.0 is a platform offered by Complete open Source Solutions(COSS),where students from different campus irrespective of all platforms can join to explore themselves with the limitless IT world by gaining knowledge on open source cutting edge technologies on demand and get opportunity to work on live projects.
3 stars 6 forks source link

Working with GUI & Excel/CSV #13

Open jeethub26230 opened 4 years ago

jeethub26230 commented 4 years ago

Create a GUI which adds the details in an Excel / CSV.

Reference Link :- Link

bvjhansisaketa commented 4 years ago
from tkinter import *
from tkinter import messagebox

import xlwt
from xlwt import Workbook

box = Tk()
fr1 =Frame(box)
fr1.pack(side='top')
fr2 =Frame(box)
fr2.pack()
fr3 =Frame(box)
fr3.pack()
fr7 =Frame(box)
fr7.pack()
fr4 =Frame(box)
fr4.pack()
fr5 =Frame(box)
fr5.pack()
fr6 =Frame(box)
fr6.pack()
fr8 =Frame(box)
fr8.pack()
lab1= Label(fr1 ,text = 'Name :')
lab1.pack(side='left')
ent1 = Entry(fr1,width= 58,)
ent1.pack()

lab2= Label(fr2,text = 'Email :')
lab2.pack(side='left')
ent2 = Entry(fr2,width= 58)
ent2.pack()

lab3= Label(fr3,text = 'Date of birth(dd/mm/yyyy) :')
lab3.pack(side='left')
ent3 = Entry(fr3,width= 58)
ent3.pack()

j = StringVar()
lab7= Label(fr7,text = 'Gender :')
lab7.pack(side='left')
mrb = Radiobutton(fr7, text = 'male',value='male',variable=j,)
mrb.pack(side='left')
frb = Radiobutton(fr7, text = 'female',value='female',variable=j)
frb.pack()

lab4= Label(fr4,text = 'phone No :')
lab4.pack(side='left')
ent4 = Entry(fr4,width= 58)
ent4.pack()

lab5= Label(fr5,text = 'subject 1 :')
lab5.pack(side='left')
ent5 = Entry(fr5,width= 58)
ent5.pack()

lab6= Label(fr6,text = 'subject 2 :')
lab6.pack(side='left')
ent6 = Entry(fr6,width= 58)
ent6.pack()

def ButC():
    var1 = StringVar()

    a = ent1.get() #name
    b = ent2.get()  #email
    c = ent3.get()  #dob
    d = ent4.get() #phone no
    f = ent5.get()
    g = ent6.get()

    if(len(a)>0):
        if( b.find('@') != -1 and  b.find('.') != -1 and ((b.index('.') == len(b) - 3 - 1 ) or (b.index('.') == len(b) - 2 - 1 ))  ):
            l=c.split('/')
            if (1<= int(l[0]) < 31 and 1 <= int(l[1]) <= 12 and int(l[2]) < 2020):
                if(j.get()== "male" or j.get() == "female"):
                    if(len(d) == 10):
                        if( 0<= int(g) <= 100 and 0 <= int(f) <= 100):
                            add_data()
                        else:
                            var1= messagebox.askretrycancel("type correct marks")
                    else:
                        var1 =messagebox.askretrycancel("enter valid phno")
                else:
                    var1 = messagebox.askretrycancel("select gender")
            else:
                 var1 = messagebox.askretrycancel("enter valid date of birth")

        else:
            var1 = messagebox.askretrycancel("enter valid email address")
    else:
        var1 = messagebox.askretrycancel("enter name")

def add_data():

    a = ent1.get()  # name
    b = ent2.get()  # email
    c = ent3.get()  # dob
    d = ent4.get()  # phone no
    e = j.get()
    f = ent5.get()
    g = ent6.get()

    # Workbook is created
    wb = Workbook()

    # add_sheet is used to create sheet.
    sheet1 = wb.add_sheet('Sheet 1')

    sheet1.write(0, 0, 'name')
    sheet1.write(0, 1, 'email')
    sheet1.write(0, 3, 'phone no')
    sheet1.write(0, 2, 'Date of Birth')
    sheet1.write(0, 4, 'gender')
    sheet1.write(0, 5, 'subject 1')
    sheet1.write(0, 6, 'subject 2')
    sheet1.write(1,0,a)
    sheet1.write(1,1,b)
    sheet1.write(1,2,c)
    sheet1.write(1,3,d)
    sheet1.write(1,4,e)
    sheet1.write(1,5,f)
    sheet1.write(1,6,g)
    wb.save('example.xls')

    ent1.delete(0,END)
    ent2.delete(0,END)
    ent3.delete(0,END)
    ent4.delete(0,END)
    ent5.delete(0, END)
    ent6.delete(0, END)
    frb.deselect()
    mrb.deselect()

but = Button(box, text = 'submit', command = ButC,bg = 'red')
but.pack()
box.geometry("1000x1000")
box.resizable(0,0)
box.mainloop()
m-ankeeta commented 4 years ago

I am M Ankeeta

regno=input("Enter register number:")
name=input("Enter name of student:")
con=input("Enter contact number:")
email=input("Enter email address:")
dob=input("Enter date of birt (dd/mm/yyyy):")
p=input("Enter physics marks:")
c=input("Enter chemistry marks:")
m=input("Enter mathematics marks:")
b=input("Enter biology marks:")

writefile=open("stud_det.csv",'a')
writefile.write(regno + "," + name + "," + con + "," + email + "," + dob + "," + p +"," + c + "," + m + "," + b + "\n")
writefile.close()
print("Record added to the file")
DinuDante commented 4 years ago
#Importing Required Pakages
from tkinter import *
from xlwt import Workbook
from tkinter import messagebox
z=0

root = Tk()

# Workbook is created
wb = Workbook()

root.title("Form Fill-up")

# add_sheet is used to create sheet.
sheet1 = wb.add_sheet('Sheet 1')

#Form Layout

#Label(s)
name = Label(root, text="Name :")
phno = Label(root, text="Phone Number :")
email = Label(root, text="Email Address :")
dob = Label(root, text="D.O.B :")
rlno = Label(root, text="Roll no. :")
sub1 = Label(root, text="Subject 1 :")
sub2 = Label(root, text="Subject 2 :")
mrk1 = Label(root, text="Marks Obtained :")
mrk2 = Label(root, text="Marks Obtained :")
gndr= Label(root, text="Gender:")

#Label Layout
name.grid(row=0, sticky=E)
phno.grid(row=2, sticky=E)
email.grid(row=4, sticky=E)
dob.grid(row=6, sticky=E)
rlno.grid(row=8, sticky=E)
sub1.grid(row=10, sticky=E)
sub2.grid(row=12, sticky=E)
mrk1.grid(row=10, column=2, sticky=E)
mrk2.grid(row=12, column=2, sticky=E)
gndr.grid(row=7, column=2, sticky=W)

#Entry(s)
ename = Entry(root, text="Name :")
ephno = Entry(root, text="Phone Number :")
eemail = Entry(root, text="Email Address :")
edob = Entry(root, text="D.O.B :")
erlno = Entry(root, text="Roll no. :")
esub1 = Entry(root, text="Subject 1 :")
esub2 = Entry(root, text="Subject 2 :")
emrk1 = Entry(root, text="Marks Obtained :")
emrk2 = Entry(root, text="Marks Obtained :")

#Entry Layout
ename.grid(row=0, column=1, columnspan=4, sticky=NSEW)
ephno.grid(row=2, column=1, columnspan=4, sticky=NSEW)
eemail.grid(row=4, column=1, columnspan=4, sticky=NSEW)
edob.grid(row=6, column=1, sticky=W)
erlno.grid(row=8, column=1, sticky=W)
esub1.grid(row=10, column=1, sticky=W)
esub2.grid(row=12, column=1, sticky=W)
emrk1.grid(row=10, column=3, sticky=W)
emrk2.grid(row=12, column=3, sticky=W)

#Radio Button
v = StringVar()
mb = Radiobutton(root, text='Male', variable=v, value="Male").grid(row=6, column=3, sticky=W)
fb = Radiobutton(root, text='Female', variable=v, value="Female").grid(row=8, column=3, sticky=W)
#fb.deselect()
#mb.deselect()

def ButC():
    var1 = StringVar()

    a = ename.get()
    b = eemail.get()
    c = edob.get()
    d = ephno.get()
    e = v.get()
    f = esub1.get()
    g = emrk1.get()
    h = esub2.get()
    i = emrk2.get()
    j= erlno.get()

    if(len(a)>0):
        if b.find('@') != -1:
            l=c.split('/')
            if (1<= int(l[0]) < 31 and 1 <= int(l[1]) <= 12 and int(l[2]) < 2020):
                if(v.get()== "Male" or v.get() == "Female"):
                    if(len(d) == 10):
                        if( 0<= int(g) <= 100 and 0 <= int(i) <= 100):
                            add_data()
                        else:
                            var1= messagebox.askretrycancel("Enter valid marks")
                    else:
                        var1 =messagebox.askretrycancel("Enter valid Phone Number")
                else:
                    var1 = messagebox.askretrycancel("Select gender")
            else:
                 var1 = messagebox.askretrycancel("Enter valid date of birth")

        else:
            var1 = messagebox.askretrycancel("Enter valid email address")
    else:
        var1 = messagebox.askretrycancel("Enter name")

def add_data():

    a = ename.get()
    b = eemail.get()
    c = edob.get()
    d = ephno.get()
    e = v.get()
    f = esub1.get()
    g = emrk1.get()
    h = esub2.get()
    i = emrk2.get()
    j = erlno.get()

    # Workbook is created
    wb = Workbook()

    # add_sheet is used to create sheet.
    sheet1 = wb.add_sheet('Sheet 1')

    sheet1.write(0, 0, 'Name')
    sheet1.write(0, 9, 'Email')
    sheet1.write(0, 3, 'Phone no')
    sheet1.write(0, 2, 'Date of Birth')
    sheet1.write(0, 4, 'Gender')
    sheet1.write(0, 5, 'Subject 1')
    sheet1.write(0, 6, 'Marks')
    sheet1.write(0, 7, 'Subject 2')
    sheet1.write(0, 8, 'Marks')
    sheet1.write(0, 1, 'Roll No')
    sheet1.write(z,0,a)
    sheet1.write(z,1,j)
    sheet1.write(z,2,c)
    sheet1.write(z,3,d)
    sheet1.write(z,4,e)
    sheet1.write(z,5,f)
    sheet1.write(z,6,g)
    sheet1.write(z,7,h)
    sheet1.write(z,8,i)
    sheet1.write(z,9,b)
    wb.save('example.xls')

    ename.delete(0,END)
    eemail.delete(0,END)
    ephno.delete(0,END)
    edob.delete(0,END)
    esub1.delete(0,END)
    emrk1.delete(0,END)
    esub2.delete(0,END)
    emrk2.delete(0,END)
    erlno.delete(0,END)

#   mb.deselect()
 #  fb.deselect()

but = Button(root, text = 'submit', command = ButC,bg = 'blue', fg ='white')
but.grid(row=18,column=1,sticky=NSEW)
root.resizable(0,0)
root.mainloop()
Debasis500 commented 4 years ago
from tkinter import*
from tkinter import messagebox
from xlmt import Workbook

box = Tk()

fr1 = Frame(box)
fr1.pack(side = 'top')

fr2 = Frame(box)
fr2.pack()

fr3 = Frame(box)
fr3.pack()

fr4 = Frame(box)
fr4.pack()

fr5 = Frame(box)
fr5.pack()

fr6 = Frame(box)
fr6.pack()

fr7 = Frame(box)
fr7.pack()

fr8 = Frame(box)
fr8.pack()

lab1 = Label(fr1, text = 'Name: ',bg= 'white')
lab1.pack(side = 'left')

ent1 = Entry(fr1, width=50)
ent1.pack()

lab2 = Label(fr2, text = 'Email ID: ',bg= 'white')
lab2.pack(side= 'left')

ent2 = Entry(fr1, width=50)
ent2.pack()

lab3 = Label(fr3, text = 'D.O.B(dd/mm/yyyy):')
lab3.pack(side  = 'left')

ent3 = Entry(fr3, width=50)
ent3.pack()

j=StringVar()
lab4 = Label(fr4, text = 'Gender:')
lab4.pack(side  = 'left')
mrb = Radiobutton(fr4, text ='Male',value ='Male',variable =j)
mrb.pack(side ='Left')
frb = radiobutton(fr4, text ='Female',value ='Female',variable=j)
frb.pack(side = 'Left')
orb =Radiobutton(fr4, text='Others',value='Others',variable=j)
orb.pack()

lab5 = Label(fr5, text= 'Ph.No:')
lab5.pack(side ='Left')

ent5= Entry(fr5,width=50)
ent5.pack()

lab6 = Label(fr6, text ='Subject 1:')
lab6.pack(side = 'Left')

ent6 = Entry(fr6,width=50)
ent6.pack()

lab7 = Label(fr7, text= 'Subject 2:')
lab7.pack(side = 'Left')

ent7 = Entry(fr7,width=50)
ent7.pack()

lab8 = Label(fr8, text= 'Subject 3:')
lab8.pack(side = 'Left')

ent8 = Entry(fr8,width=50)
ent8.pack()

def ButC():
    var1 = StringVar()

    a = ent1.get()     #Name
    b = ent2.get()     #Email
    c = ent3.get()     #D.O.B
    d = ent4.get()     #Gender
    e = ent5.get()     #Ph.No
    f = ent6.get()
    f = ent7.get()
    f = ent8.get()

def add_data():

    a = ent1.get()
    b = ent2.get()
    c = ent3.get()
    d = ent4.get()
    e = j.get()
    f = ent5.get()
    g = ent6.get()
    h = ent7.get()

wb = Workbook()   #Workbook created

sheet1 = wb.add_sheet('Sheet 1')

sheet1.write(0, 0, 'Name')
sheet1.write(0, 1, 'Email ID')
sheet1.write(0, 2, 'Ph.No')
sheet1.write(0, 3, 'D.O.B')
sheet1.write(0, 4, 'Gender')
sheet1.write(0, 5, 'Subject 1')
sheet1.write(0, 6, 'Subject 2')
sheet1.write(0, 7, 'Subject 3')

sheet1.write(1,0,a)
sheet1.write(1,1,b)
sheet1.write(1,2,c)
sheet1.write(1,3,d)
sheet1.write(1,4,e)
sheet1.write(1,5,f)
sheet1.write(1,6,g)
sheet1.write(1,7,h)
wb.save('Sheet.xls')

ent1.delete(0,END)
ent2.delete(0,END)
ent3.delete(0,END)
ent4.delete(0,END)
ent5.delete(0,END)
ent6.delete(0,END)
ent7.delete(0,END)
ent8.delete(0,END)
frb.deselect()
mrb.deselect()

but = Button(box, text = 'Submit', command = ButC, bg = 'Green')
but.pack()
box.geometry("850x960")
box.resizable(0,0)
box.mainloop()
megha-biswas01 commented 4 years ago

from tkinter import *
from tkinter import messagebox

box = Tk()
box.title("Python Class")

name = []
age = []
contact_no = []
email_id = []
roll_no = []
country = []
subject = []

l1 = Label(box, text = 'Registration Form', fg ='Blue', font ='Italic')
l1.pack()

fr1 = Frame(box)
fr1.pack(side = 'top')

fr2 = Frame(box)
fr2.pack()

fr3 = Frame(box)
fr3.pack()

fr4 = Frame(box)
fr4.pack()

fr5 = Frame(box)
fr5.pack()

fr6 = Frame(box)
fr6.pack()

fr7 = Frame(box)
fr7.pack()

fr8 = Frame(box)
fr8.pack()

fr9 = Frame(box)
fr9.pack()

fr10 = Frame(box)
fr10.pack()

lab1 = Label(fr1,text = 'UserName\t : ',font= 'Italic',)
lab1.pack(side = 'left',padx=2,)
ent1 = Entry(fr1,width = 50, borderwidth = 5, bg='Dark Gray' )
ent1.pack(pady=5,)

lab2 = Label(fr2,text = 'DOB(dd/mm/yy)\t : ' , font= 'Italic')
lab2.pack(side = 'left',padx=2)
ent2 = Entry(fr2,width = 50,borderwidth = 5,bg ='Dark gray')
ent2.pack()

lab3 = Label(fr3,text = 'Contact No\t : ',font= 'Italic',)
lab3.pack(side = 'left',padx=2,)
ent3 = Entry(fr3,width = 50, borderwidth = 5, bg='Dark Gray' )
ent3.pack(pady = 3)

lab4 = Label(fr4,text = 'Email ID\t\t : ',font= 'Italic',)
lab4.pack(side = 'left',padx=2,)
ent4 = Entry(fr4,width = 50, borderwidth = 5, bg='Dark Gray' )
ent4.pack(pady = 3)

lab5 = Label(fr5,text = 'Roll NO\t\t : ',font= 'Italic',)
lab5.pack(side = 'left',padx=2,)
ent5 = Entry(fr5,width = 50, borderwidth = 5, bg='Dark Gray' )
ent5.pack(pady = 3)

lab6 = Label(fr6,text = 'Country\t\t :',width = 20,font = 'Italic')
lab6.pack(side ='left',padx=2)
list1 = ['Canada','India','UK','Nepal','Iceland','SouthAfrica'];
z = StringVar()
droplist=OptionMenu(fr6,z,*list1)
droplist.config(widt=15)
z.set('Select your Country')
droplist.pack(pady = 5)

lab7 = Label(fr7,text = 'Select Course\t:',width = 20,font = 'Italic')
lab7.pack(side ='left',padx =2)
var = IntVar()
Radiobutton(fr7, text="RHA",padx = 5, variable=var,value =1).pack()
var1 = IntVar()
Radiobutton(fr7, text="Python",padx = 5, variable=var1,value =2).pack()

lab8 = Label(fr8,text = 'Subject1 Marks\t : ',font= 'Italic',)
lab8.pack(side = 'left',padx=2,)
ent8 = Entry(fr8,width = 50, borderwidth = 5, bg='Dark Gray' )
ent8.pack(pady = 3)

lab9 = Label(fr9,text = 'Subject2 Marks\t : ',font= 'Italic',)
lab9.pack(side = 'left',padx=2,)
ent9 = Entry(fr9,width = 50, borderwidth = 5, bg='Dark Gray' )
ent9.pack(pady = 3)

lab10 = Label(fr10,text = 'Subject3 Marks\t : ',font= 'Italic',)
lab10.pack(side = 'left',padx=2,)
ent10 = Entry(fr10,width = 50, borderwidth = 5, bg='Dark Gray' )
ent10.pack(pady = 3)

def nameerror():
    messagebox.showerror("Warning", "Please enter Username ")

def ageerror():
    messagebox.showerror("Warning", "Please enter DOB ")

def contact_noerror():
    messagebox.showerror("Warning", "Please enter Contact NO ")

def email_iderror():
    messagebox.showerror("Warning", "Please enter Email Id ")

def roll_noerror():
    messagebox.showerror("Warning", "Please enter Roll No ")

def callback():
    if messagebox.askyesno('Verify', 'Really quit?'):
        box.destroy()
    else:
        messagebox.showinfo('No', 'Quit has been cancelled')

def submit_fields():
    name_info = ent1.get()
    Dob_info = ent2.get()
    contact_info = ent3.get()
    email_info = ent4.get()
    roll_info = ent5.get()
    marks1 = ent8.get()
    marks2 = ent9.get()
    marks3 = ent10.get()

    print(name_info,Dob_info,contact_info,email_id,roll_info,marks1,marks2,marks3)

    file = open("user.txt","w")
    file.write(name_info)
    file.write(Dob_info)
    file.write(contact_info)
    file.write(email_info)
    file.write(marks1)
    file.write(marks2)
    file.write(marks3)

    #file.write(var)
    #file.write(var1)
    file.close()
    print("User",name_info,"has been saved sucessfully!")
def Click():
    a = ent1.get()#name
    b = ent2.get()#DOB
    c = ent3.get()#Contact No
    d = ent4.get()#Email No
    e = ent5.get()#RollNo

    if (len(a) > 0):
        if(len(b) == 0):
            ageerror()
        l = b.split('/')
        if(1 <= int(l[0]) < 31 and 1 <= int(l[1]) <= 12 and int(l[2]) < 2020):
            if (len(c) == 10):
                if (d.find('@') != -1 and d.find('.') != -1 and ((d.index('.') == len(d) - 3 - 1) or (d.index('.') == len(b) - 2 - 1))):
                    if (len(e)!=0 and len(e)>3):
                                submit_fields()
                    else:
                                var1 = messagebox.askretrycancel("Enter correct Roll No")

                else:
                        var1 = messagebox.askretrycancel("Enter Valid EmailID")
            else:
                    var1 = messagebox.askretrycancel("Enter Valid Contact No")

        else:
                var1 = messagebox.askretrycancel("Enter Valid DOB")
    else:
            var1 = messagebox.askretrycancel("Pleas Enter Name")

but1 = Button(box,text = 'Submit', command= Click, bg = 'Red', fg = 'White',font = 'Italic')
but1.pack()

but2 = Button(text='Quit', command=callback, bg = 'Orange', fg ='Red', font = 'Italic')
but2.pack(padx ='5' ,pady ='5')

box.resizable(2000,1200)

box.mainloop()
srvk99 commented 4 years ago

MY CODE

git clone https://github.com/srvk99/tk_inter_database.git
cd tk_inter_database/
python3 database.py