Я создал форму, используя tkinter.
Это форма для ученика, которая получает данные из базы данных и отображает информацию об ученике, в которой, когда я нажимаю «display», она показывает все детали правильно, но когда янажмите «enter / display», чтобы добавить данные.
Я не могу найти способ очистить все текстовые поля.
Я новичок в python, пожалуйста, помогите мне с предоставленным кодом:
import tkinter
from tkinter import *
from tkinter.font import Font
from PIL import ImageTk, Image
from functools import partial
import os
import dbconnection
conn = dbconnection.conn()
def fields(cursor):
results = {}
column = 0
for d in cursor.description:
results[d[0]] = column
column = column + 1
return results
def onclick(event):
helloCallBack()
clearfields()
def clearfields():
for row in field_map:
row.pack_forget()
def helloCallBack():
cursor = conn.cursor()
cursor.execute("SELECT * FROM YR2_TR_M18 where RollNo='" + RollNo.get() + "'")
field_map = fields(cursor)
for row in cursor:
CName.insert(0,row[field_map['CNAME']])
FName.insert(0, row[field_map['FNAME']])
MName.insert(0, row[field_map['MNAME']])
PREGNO.insert(0, row[field_map['PREGNO']])
if row[field_map['SEX']] == 'M':
Gender.insert(0, 'Male')
elif row[field_map['SEX']] == 'F':
Gender.insert(0, 'FEMALE')
PRevmny.insert(0, row[field_map['PMY']])
COmm.insert(0, row[field_map['COMM']])
CAt.insert(0, row[field_map['CAT']])
PH.insert(0, row[field_map['PH']])
if row[field_map['MEDIUM']] == 'E':
MEDIUM.insert(0, 'ENGLISH')
elif row[field_map['MEDIUM']] == 'A':
MEDIUM.insert(0, 'TELUGU')
elif row[field_map['MEDIUM']] == 'H':
MEDIUM.insert(0, 'HINDI')
elif row[field_map['MEDIUM']] == 'K':
MEDIUM.insert(0, 'KANNADA')
elif row[field_map['MEDIUM']] == 'O':
MEDIUM.insert(0, 'ODISHA')
elif row[field_map['MEDIUM']] == 'U':
MEDIUM.insert(0, 'URDU')
elif row[field_map['MEDIUM']] == 'M':
MEDIUM.insert(0, 'MARATHI')
Group_code.insert(0, row[field_map['PART3']])
#MEDIUM.insert(0, row[field_map['MEDIUM']])
#Gender.insert(0, row[field_map['SEX']])
COll_code.insert(0, row[field_map['COLL_CODE']])
CEntre_code.insert(0, row[field_map['CENTRE_CODE']])
YR1PC1.insert(0, row[field_map['YR1PC1']])
YR1PC2.insert(0, row[field_map['YR1PC2']])
YR1PC3.insert(0, row[field_map['YR1PC3']])
YR1PC4.insert(0, row[field_map['YR1PC4']])
YR1PC5.insert(0, row[field_map['YR1PC5']])
YR1PC6.insert(0, row[field_map['YR1PC6']])
YR1MRK1.insert(0, row[field_map['YR1MRK1']])
YR1MRK2.insert(0, row[field_map['YR1MRK2']])
YR1MRK3.insert(0, row[field_map['YR1MRK3']])
YR1MRK4.insert(0, row[field_map['YR1MRK4']])
YR1MRK5.insert(0, row[field_map['YR1MRK5']])
YR1MRK6.insert(0, row[field_map['YR1MRK6']])
YR1IN1.insert(0, row[field_map['YR1IN1']])
YR1IN2.insert(0, row[field_map['YR1IN2']])
YR1IN3.insert(0, row[field_map['YR1IN3']])
YR1IN4.insert(0, row[field_map['YR1IN4']])
YR1IN5.insert(0, row[field_map['YR1IN5']])
YR1IN6.insert(0, row[field_map['YR1IN6']])
YR1RS1.insert(0, row[field_map['YR1RS1']])
YR1RS2.insert(0, row[field_map['YR1RS2']])
YR1RS3.insert(0, row[field_map['YR1RS3']])
YR1RS4.insert(0, row[field_map['YR1RS4']])
YR1RS5.insert(0, row[field_map['YR1RS5']])
YR1RS6.insert(0, row[field_map['YR1RS6']])
YR2PC1.insert(0, row[field_map['YR2PC1']])
YR2PC2.insert(0, row[field_map['YR2PC2']])
YR2PC3.insert(0, row[field_map['YR2PC3']])
YR2PC4.insert(0, row[field_map['YR2PC4']])
YR2PC5.insert(0, row[field_map['YR2PC5']])
YR2PC6.insert(0, row[field_map['YR2PC6']])
YR2PC7.insert(0, row[field_map['YR2PC7']])
YR2PC8.insert(0, row[field_map['YR2PC8']])
YR2PC9.insert(0, row[field_map['YR2PC9']])
YR2PC10.insert(0, row[field_map['YR2PC10']])
YR2MRK1.insert(0, row[field_map['YR2MRK1']])
YR2MRK2.insert(0, row[field_map['YR2MRK2']])
YR2MRK3.insert(0, row[field_map['YR2MRK3']])
YR2MRK4.insert(0, row[field_map['YR2MRK4']])
YR2MRK5.insert(0, row[field_map['YR2MRK5']])
YR2MRK6.insert(0, row[field_map['YR2MRK6']])
YR2MRK7.insert(0, row[field_map['YR2MRK7']])
YR2MRK8.insert(0, row[field_map['YR2MRK8']])
YR2MRK9.insert(0, row[field_map['YR2MRK9']])
YR2MRK10.insert(0, row[field_map['YR2MRK10']])
YR2IN1.insert(0, row[field_map['YR2IN1']])
YR2IN2.insert(0, row[field_map['YR2IN2']])
YR2IN3.insert(0, row[field_map['YR2IN3']])
YR2IN4.insert(0, row[field_map['YR2IN4']])
YR2IN5.insert(0, row[field_map['YR2IN5']])
YR2IN6.insert(0, row[field_map['YR2IN6']])
YR2IN7.insert(0, row[field_map['YR2IN7']])
YR2IN8.insert(0, row[field_map['YR2IN8']])
YR2IN9.insert(0, row[field_map['YR2IN9']])
YR2IN10.insert(0, row[field_map['YR2IN10']])
YR2RS1.insert(0, row[field_map['YR2RS1']])
YR2RS2.insert(0, row[field_map['YR2RS2']])
YR2RS3.insert(0, row[field_map['YR2RS3']])
YR2RS4.insert(0, row[field_map['YR2RS4']])
YR2RS5.insert(0, row[field_map['YR2RS5']])
YR2RS6.insert(0, row[field_map['YR2RS6']])
YR2RS7.insert(0, row[field_map['YR2RS7']])
YR2RS8.insert(0, row[field_map['YR2RS8']])
YR2RS9.insert(0, row[field_map['YR2RS9']])
YR2RS10.insert(0, row[field_map['YR2RS10']])
window = Tk()
main=Frame(window)
window.bind('<Return>', onclick)
main.pack()
window.geometry("1366x768")
window.title("Students Marks Display")
my_font = Font(family="Times New Roman", size=16, weight="bold", underline=1)
my_font1 = Font(family="Times New Roman", size=16, weight="bold")
image = Image.open(r"someimage")
zoom = 0.4
# multiple image size by zoom
pixels_x, pixels_y = tuple([int(zoom * x) for x in image.size])
img = ImageTk.PhotoImage(image.resize((pixels_x, pixels_y)))
label = Label(window, image=img)
label.image = img
label.place(x=1100, y=50)
# label.pack()
window.update_idletasks()
L1 = Label(window, text = "STUDENT MARKS VIEW",font=my_font,fg='blue').place(x=550, y=10)
L1 = Label(window, text = "Roll No .",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=20)
L1 = Label(window, text = "Student Name",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=70)
L1 = Label(window, text = "Fathers Name",fg='red',font=('Helvetica', 10, 'bold')).place(x=380, y=70)
L1 = Label(window, text = "Mothers Name",fg='red',font=('Helvetica', 10, 'bold')).place(x=730, y=70)
L1 = Label(window, text = "PREVIOUS NUMBER",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=120)
L1 = Label(window, text = "PREV M & Y",fg='red',font=('Helvetica', 10, 'bold')).place(x=250, y=120)
L1 = Label(window, text = "Gender",fg='red',font=('Helvetica', 10, 'bold')).place(x=380, y=120)
L1 = Label(window, text = "Community",fg='red',font=('Helvetica', 10, 'bold')).place(x=600, y=120)
L1 = Label(window, text = "CATEGORY",fg='red',font=('Helvetica', 10, 'bold')).place(x=730, y=120)
L1 = Label(window, text = "PH",fg='red',font=('Helvetica', 10, 'bold')).place(x=850, y=120)
L1 = Label(window, text = "MEDIUM",fg='red',font=('Helvetica', 10, 'bold')).place(x=950, y=120)
L1 = Label(window, text = "College code",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=170)
L1 = Label(window, text = "Centre code",fg='red',font=('Helvetica', 10, 'bold')).place(x=380, y=170)
L1 = Label(window, text = "Group code ",fg='red',font=('Helvetica', 10, 'bold')).place(x=730, y=170)
L1 = Label(window, text = "MARKS",font=my_font,fg='blue').place(x=650, y=230)
L1 = Label(window, text = "YR1PC1",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=260)
L1 = Label(window, text = "YR1PC2",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=300)
L1 = Label(window, text = "YR1PC3",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=340)
L1 = Label(window, text = "YR1PC4",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=380)
L1 = Label(window, text = "YR1PC5",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=420)
L1 = Label(window, text = "YR1PC6",fg='red',font=('Helvetica', 10, 'bold')).place(x=35, y=460)
L1 = Label(window, text = "YR2PC1",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=260)
L1 = Label(window, text = "YR2PC2",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=300)
L1 = Label(window, text = "YR2PC3",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=340)
L1 = Label(window, text = "YR2PC4",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=380)
L1 = Label(window, text = "YR2PC5",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=420)
L1 = Label(window, text = "YR2PC6",fg='red',font=('Helvetica', 10, 'bold')).place(x=500, y=460)
L1 = Label(window, text = "YR2PC7",fg='red',font=('Helvetica', 10, 'bold')).place(x=1000, y=260)
L1 = Label(window, text = "YR2PC8",fg='red',font=('Helvetica', 10, 'bold')).place(x=1000, y=300)
L1 = Label(window, text = "YR2PC9",fg='red',font=('Helvetica', 10, 'bold')).place(x=1000, y=340)
L1 = Label(window, text = "YR2PC10",fg='red',font=('Helvetica', 10, 'bold')).place(x=1000, y=380)
RollNo = Entry(window, width=15,font=my_font1,fg='blue')
RollNo.place(x=40, y=45)
RollNo.insert(0,"1861244872")
CName = Entry(window, width=30,font=my_font1,fg='blue')
CName.place(x=35, y=90)
FName = Entry(window, width=30,font=my_font1,fg='blue')
FName.place(x=380, y=90)
MName = Entry(window, width=30,font=my_font1,fg='blue')
MName.place(x=730, y=90)
PREGNO = Entry(window, width=15,font=my_font1,fg='blue')
PREGNO.place(x=35, y=140)
PRevmny = Entry(window, width=10,font=my_font1,fg='blue')
PRevmny.place(x=250, y=140)
Gender = Entry(window, width=17,font=my_font1,fg='blue')
Gender.place(x=380, y=140)
COmm = Entry(window, width=10,font=my_font1,fg='blue')
COmm.place(x=600, y=140)
CAt = Entry(window, width=7,font=my_font1,fg='blue')
CAt.place(x=730, y=140)
PH = Entry(window, width=7,font=my_font1,fg='blue')
PH.place(x=850, y=140)
MEDIUM = Entry(window, width=10,font=my_font1,fg='blue')
MEDIUM.place(x=950, y=140)
COll_code = Entry(window, width=30,font=my_font1,fg='blue')
COll_code.place(x=35, y=190)
CEntre_code = Entry(window, width=30,font=my_font1,fg='blue')
CEntre_code.place(x=380, y=190)
Group_code = Entry(window, width=30,font=my_font1,fg='blue')
Group_code.place(x=730, y=190)
YR1PC1 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC1.place(x=95, y=260)
YR1PC2 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC2.place(x=95, y=300)
YR1PC3 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC3.place(x=95, y=340)
YR1PC4 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC4.place(x=95, y=380)
YR1PC5 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC5.place(x=95, y=420)
YR1PC6 = Entry(window, width=5,font=my_font1,fg='blue')
YR1PC6.place(x=95, y=460)
YR1MRK1 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK1.place(x=165, y=260)
YR1MRK2 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK2.place(x=165, y=300)
YR1MRK3 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK3.place(x=165, y=340)
YR1MRK4 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK4.place(x=165, y=380)
YR1MRK5 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK5.place(x=165, y=420)
YR1MRK6 = Entry(window, width=5,font=my_font1,fg='blue')
YR1MRK6.place(x=165, y=460)
YR1IN1 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN1.place(x=235, y=260)
YR1IN2 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN2.place(x=235, y=300)
YR1IN3 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN3.place(x=235, y=340)
YR1IN4 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN4.place(x=235, y=380)
YR1IN5 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN5.place(x=235, y=420)
YR1IN6 = Entry(window, width=5,font=my_font1,fg='blue')
YR1IN6.place(x=235, y=460)
YR1RS1 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS1.place(x=305, y=260)
YR1RS2 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS2.place(x=305, y=300)
YR1RS3 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS3.place(x=305, y=340)
YR1RS4 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS4.place(x=305, y=380)
YR1RS5 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS5.place(x=305, y=420)
YR1RS6 = Entry(window, width=5,font=my_font1,fg='blue')
YR1RS6.place(x=305, y=460)
YR2PC1 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC1.place(x=570, y=260)
YR2PC2 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC2.place(x=570, y=300)
YR2PC3 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC3.place(x=570, y=340)
YR2PC4 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC4.place(x=570, y=380)
YR2PC5 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC5.place(x=570, y=420)
YR2PC6 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC6.place(x=570, y=460)
YR2MRK1 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK1.place(x=640, y=260)
YR2MRK2 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK2.place(x=640, y=300)
YR2MRK3 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK3.place(x=640, y=340)
YR2MRK4 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK4.place(x=640, y=380)
YR2MRK5 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK5.place(x=640, y=420)
YR2MRK6 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK6.place(x=640, y=460)
YR2IN1 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN1.place(x=710, y=260)
YR2IN2 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN2.place(x=710, y=300)
YR2IN3 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN3.place(x=710, y=340)
YR2IN4 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN4.place(x=710, y=380)
YR2IN5 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN5.place(x=710, y=420)
YR2IN6 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN6.place(x=710, y=460)
YR2RS1 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS1.place(x=780, y=260)
YR2RS2 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS2.place(x=780, y=300)
YR2RS3 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS3.place(x=780, y=340)
YR2RS4 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS4.place(x=780, y=380)
YR2RS5 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS5.place(x=780, y=420)
YR2RS6 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS6.place(x=780, y=460)
YR2PC7 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC7.place(x=1070, y=260)
YR2PC8 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC8.place(x=1070, y=300)
YR2PC9 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC9.place(x=1070, y=340)
YR2PC10 = Entry(window, width=5,font=my_font1,fg='blue')
YR2PC10.place(x=1070, y=380)
YR2MRK7 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK7.place(x=1140, y=260)
YR2MRK8 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK8.place(x=1140, y=300)
YR2MRK9 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK9.place(x=1140, y=340)
YR2MRK10 = Entry(window, width=5,font=my_font1,fg='blue')
YR2MRK10.place(x=1140, y=380)
YR2IN7 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN7.place(x=1210, y=260)
YR2IN8 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN8.place(x=1210, y=300)
YR2IN9 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN9.place(x=1210, y=340)
YR2IN10 = Entry(window, width=5,font=my_font1,fg='blue')
YR2IN10.place(x=1210, y=380)
YR2RS7 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS7.place(x=1280, y=260)
YR2RS8 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS8.place(x=1280, y=300)
YR2RS9 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS9.place(x=1280, y=340)
YR2RS10 = Entry(window, width=5,font=my_font1,fg='blue')
YR2RS10.place(x=1280, y=380)
b = Button(window, text="Display", width=15, height=2, command=helloCallBack).place(x=250, y=500)
window.mainloop()