Курсовая работа (т): Разработка базы данных на языке программирования Python

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

#окно "D" - поиск данныхfind_data:__init__(self, root, all_font):(root, all_font)__call__(self, root, all_font):.FRD = Tkinter.Frame(root).FRD["width"] = 1024.FRD["height"] = 768.FRD.place(relx = 0, rely = 0, anchor = "nw" ).FRD.pack()

#************************************************************

************************find_data (event = None):.baza_vsia_sort = [].baza_vsia = [].u =

['C:\\TM_Base\\Bakalavr\\',"C:\\TM_Base\\Spec\\",'C:\\TM_Base\\Magistr\\]m in self.u:.chdir(m).p = m

#print self.baza_vsia_sort

#print self.dictonary_find.keys()w in self.dictonary_find.keys():

#print self.dictonary_find.get(w).folders = [].baza_vsia_sortw == "1":= os.listdir(m)i in folders:i[-4] != '.':.folders.append(i)i in self.folders:.path_2 = self.p + i.chdir(self.path_2)= open ("Base_stud.bso" , "rb").k = pickle.load(base).close()= self.dictonary_find.get(w)[0]= self.dictonary_find.get(w)[1]_sr = self.k.get(poisk)

#if data.decode("cp1251") == data_sr:data == data_sr:.baza_vsia.append(self.k)

#print self.baza_vsia:

#print len(self.baza_vsia)

#print "baza vsja"

#print self.baza_vsiai in range(0, len(self.baza_vsia)):= self.baza_vsia[i]

#print b= self.dictonary_find.get(w)[0]= self.dictonary_find.get(w)[1]_sr = b.get(poisk)data == data_sr:.baza_vsia_sort.append(b)

#print "2"

#print self.baza_vsia

#print self.baza_vsia_sortfind_data_tabl(event = None):.dictonary_find.keys().Frame_Listbox.destroy()_widget_create().kol = 0.vibor = self.kol.Label_02 ["text"] = u"ФИО".Label_03 ["text"] = u"Год защиты"i in self.baza_vsia:.base_for_prosmotr = []"2".kol = self.kol + 1= i_1 = m.get("SName_S")_2 = m.get("Name_S")_3 = m.get("LName_S")_list_02 = key_1 + " " + key_2 + " " + key_3_list_03 = m.get("God_1").Listbox_01.insert("end", self.kol).Listbox_02.insert("end", text_list_02).Listbox_03.insert("end", text_list_03).base_for_prosmotr = self.baza_vsialen(self.baza_vsia_sort[0]) > 0:.base_for_prosmotr = self.baza_vsia_sorti in self.baza_vsia_sort:u"второй отбор".kol = self.kol + 1= i_1 = m.get("SName_S")_2 = m.get("Name_S")_3 = m.get("LName_S")_list_02 = key_1 + " " + key_2 + " " + key_3_list_03 = m.get("God_1").Listbox_01.insert("end", self.kol).Listbox_02.insert("end", text_list_02).Listbox_03.insert("end", text_list_03)

else:u"параметр поиска только один"

def die (event = None):self.baza_vsia_sortself.baza_vsia.FRD.destroy().kol = 0.dictonary_find = {}_for_poisk = []DOBAVIT (event = None):.kol = self.kol + 1.vibor = self.kol:_list_03 = self.Znachenie_data.get():_list_03 = self.Znachenie_data.Listbox_01.insert("end", self.kol).Listbox_02.insert("end", self.vibor_data).Listbox_03.insert("end", text_list_03)_for_poisk = []_for_poisk.append(self.parametp_poiska)_for_poisk.append(text_list_03)

#print param_for_poiskself.kol == 1:= "1"self.kol == 2:= "2"self.kol == 3:= "3"self.kol == 4:= "4"self.kol == 5:= "5"self.kol == 6:= "6".dictonary_find[ch] = param_for_poisk.l_spis = self.kol

#print self.dictonary_findpreview_inf (event = None):self.base_for_prosmotr_find.preview_find(root,all_font,self.base_for_prosmotr,event)Clear(event =None):.Frame_Listbox.destroy()

#print "listbox.destroy".kol = 0.dictonary_find = {}_widget_create()destroy_pole(event = None):## убивает открытие поля:.MB_Spec.destroy()::.EntD1.destroy()::.MB_Stepen.destroy()::.MB_Mark.destroy()::.Ent_Name.destroy()::.Ent_SName.destroy()::.Ent_LName.destroy()::.Ent_Kol_page.destroy()::.Ent_Kol_pict.destroy()::.Ent_Kol_plac.destroy()::.Ent_Kol_tabl.destroy()::.Ent_Theme.destroy()::.God.destroy(): Spec(event = None):## выбор специальности

self.EntD1 = Tkinter.Entry(self.FRD).EntD1.place(relx = 0.5, rely = 0.1, anchor = "w").EntD1['font'] = all_font.EntD1["width"] = 20.Znachenie_data = self.EntD1Grup(event = None):## поле ввода "Группа".EntD1 = Tkinter.Entry(self.FRD).EntD1.place(relx = 0.5, rely = 0.1, anchor = "w").EntD1['font'] = all_font.EntD1["width"] = 20.Znachenie_data = self.EntD1Mark (event = None): ## поле ввода "Оценка"m (event = None):.MB_Mark["text"] = event.Znachenie_data = event.MB_Mark = Tkinter.Menubutton(self.FRD, relief = "raised", justify =

"center").MB_Mark.place(relx = 0.5, rely = 0.1, anchor = "w").MB_Mark.menu = Tkinter.Menu(self.MB_Mark, tearoff = 0).MB_Mark ["menu"] = self.MB_Mark.menu.MB_Mark ["bg"] = "white".MB_Mark ["font"] = all_font.MB_Mark ["width"] = 20.MB_Mark["text"] = (u"Вибрать оценку")

#self.MB_Mark.menu.add("cascade", label = u"1", command = lambda

s=u"1" :m(s))

#self.MB_Mark.menu.add("cascade", label = u"2", command = lambda

s=u"2" :m(s)).MB_Mark.menu.add("cascade", label = u"3", command = lambda

s=u"3" :m(s)).MB_Mark.menu.add("cascade", label = u"4", command = lambda

s=u"4" :m(s)).MB_Mark.menu.add("cascade", label = u"5", command = lambda

s=u"5" :m(s))Stepen (event = None): ## поле ввода "степень"st (event = None):.MB_Stepen["text"] = event.Znachenie_data = event.MB_Stepen = Tkinter.Menubutton(self.FRD, relief = "raised", justify =

"center").MB_Stepen.place(relx = 0.5, rely = 0.1, anchor = "w").MB_Stepen.menu = Tkinter.Menu(self.MB_Stepen, tearoff = 0).MB_Stepen ["menu"] = self.MB_Stepen.menu.MB_Stepen ["bg"] = "white".MB_Stepen ["font"] = all_font.MB_Stepen ["width"] = 20.MB_Stepen["text"] = (u"Вибрать степень").MB_Stepen.menu.add("cascade", label = u"Бакалавр", command = s=u"Бакалавр" :st(s)).MB_Stepen.menu.add("cascade", label = u"Специалист", command =

lambda s=u"Специалист" :st(s)).MB_Stepen.menu.add("cascade", label = u"Магистр", command =

lambda s=u"Магистр" :st(s))Name(event = None):## поле ввода "Имя".Ent_Name = Tkinter.Entry(self.FRD).Ent_Name.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_Name ['font'] = all_font.Ent_Name["width"] = 30.Znachenie_data = self.Ent_NameSName(event = None):## поле ввода "ФАМИЛИЯ".Ent_SName = Tkinter.Entry(self.FRD).Ent_SName.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_SName ['font'] = all_font.Ent_SName["width"] = 30.Znachenie_data = self.Ent_SNameLName(event = None):## поле ввода "ОТЧЕСТВО".Ent_LName = Tkinter.Entry(self.FRD).Ent_LName.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_LName ['font'] = all_font.Ent_LName["width"] = 30.Znachenie_data = self.Ent_LName

def Kol_page(event = None): ## поле ввода "КОЛИЧЕСТВО СТРАНИЦ"

self.Ent_Kol_page = Tkinter.Entry(self.FRD).Ent_Kol_page.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_Kol_page ['font'] = all_font.Ent_Kol_page["width"] = 30.Znachenie_data = self.Ent_Kol_page

def Kol_plac(event = None): ## поле ввода "КОЛИЧЕСТВО

ПЛАКАТОВ"

self.Ent_Kol_plac = Tkinter.Entry(self.FRD).Ent_Kol_plac.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_Kol_plac ['font'] = all_font.Ent_Kol_plac["width"] = 30.Znachenie_data = self.Ent_Kol_plac

def Kol_pict(event = None):## поле ввода "КОЛИЧЕСТВО РИСУНКОВ"

self.Ent_Kol_pict = Tkinter.Entry(self.FRD).Ent_Kol_pict.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_Kol_pict ['font'] = all_font.Ent_Kol_pict["width"] = 30.Znachenie_data = self.Ent_Kol_pict

def Kol_tabl(event = None): ## поле ввода "КОЛИЧЕСТВО ТАБЛИЦ

self.Ent_Kol_tabl = Tkinter.Entry(self.FRD).Ent_Kol_tabl.place(relx = 0.5, rely = 0.1, anchor = "w").Ent_Kol_tabl ['font'] = all_font.Ent_Kol_tabl["width"] = 30.Znachenie_data = self.Ent_Kol_tabl

def God (event = None):## поле ввода "КОЛИЧЕСТВО РИСУНКОВ"

self.God = Tkinter.Entry(self.FRD).God.place(relx = 0.5, rely = 0.1, anchor = "w").God ['font'] = all_font.God ["width"] = 30.Znachenie_data = self.God Param(event = None):##при выборе параметра открывается новое

поле ввода\выбора_PARAM["text"] = eventevent == u"Специальность":_pole()().parametp_poiska = "Spec"event == u"Группа":_pole()().parametp_poiska = "Grup"event == u"Оценка":_pole()().parametp_poiska = "Mark"event == u"Степень":_pole()().parametp_poiska = "Stepen"event == u"Имя":_pole()().parametp_poiska = "Name_S"event == u"Фамилия":_pole()().parametp_poiska = 'SName_S'event == u"Отчество":_pole()().parametp_poiska = "LName_S"

elif event == u"Количество страниц":

destroy_pole()_page().parametp_poiska = "page"

elif event == u"Количество плакатов":

destroy_pole()_plac().parametp_poiska = "plac"

elif event == u"Количество рисунков":

destroy_pole()_pict().parametp_poiska = "pict"

elif event == u"Количество таблиц":

destroy_pole()_tabl().parametp_poiska = "tabl"event == u"Год":_pole()().parametp_poiska = "God_1".vibor_data = event.title(u"Найти запись")

#root.geometry("1024x768+0+0")_OK = Tkinter.Button(self.FRD)_OK ["text"] = u"Добавить"_OK.place(relx = 0.5, rely = 0.25, anchor = "center")_OK["height"] = 1_OK ["width"] = 20_OK ["font"] = all_font_OK.bind("<Button-1>",DOBAVIT)_Clear = Tkinter.Button(self.FRD)_Clear ["text"] = u"Очистить список"_Clear.place(relx = 0.5, rely = 0.75, anchor = "center")_Clear["height"] = 1_Clear ["width"] = 20_Clear ["font"] = all_font_Clear.bind("<Button-1>", Clear)_Otmena = Tkinter.Button(self.FRD)_Otmena ["text"] = u"Отмена"_Otmena.place(relx = 0.2, rely = 0.85, anchor = "center")_Otmena["height"] = 1_Otmena ["width"] = 25_Otmena ["font"] = all_font_Otmena.bind("<Button-1>", die)_Find = Tkinter.Button(self.FRD)_Find ["text"] = u"Искать"_Find.place(relx = 0.8, rely = 0.85, anchor = "center")_Find["height"] = 1_Find ["width"] = 25_Find ["font"] = all_font_Find.bind("<Button-1>",find_data)_Find.bind("<ButtonRelease>",find_data_tabl)

# основное меню параметров поиска_PARAM = Tkinter.Menubutton(self.FRD, relief = "raised", justify =

"center")_PARAM.place(relx = 0.2, rely = 0.1, anchor = "center")_PARAM.menu = Tkinter.Menu(MB_PARAM, tearoff = 0)_PARAM ["menu"] = MB_PARAM.menu_PARAM ["bg"] = "white"_PARAM ["font"] = all_font_PARAM ["width"] = 25_PARAM["text"] = (u"Параметр поиска")_PARAM.menu.add("cascade", label = u"Специальность", command = p=u"Специальность" :Param(p))_PARAM.menu.add("cascade", label = u"Группа", command = lambda

p=u"Группа" :Param(p))_PARAM.menu.add("cascade", label = u"Оценка", command = lambda

p=u"Оценка" :Param(p))_PARAM.menu.add("cascade", label = u"Степень", command = lambda

p=u"Степень" :Param(p))_PARAM.menu.add("cascade", label = u"Имя", command = lambda

p=u"Имя" :Param(p))_PARAM.menu.add("cascade", label = u"Фамилия", command =

lambda p=u"Фамилия" :Param(p))_PARAM.menu.add("cascade", label = u"Отчество", command =

lambda p=u"Отчество" :Param(p))_PARAM.menu.add("cascade", label = u"Количество страниц",

command = lambda p=u"Количество страниц" :Param(p))_PARAM.menu.add("cascade", label = u"Количество плакатов",

command = lambda p=u"Количество плакатов" :Param(p))_PARAM.menu.add("cascade", label = u"Количество рисунков",

command = lambda p=u"Количество рисунков" :Param(p))_PARAM.menu.add("cascade", label = u"Количество таблиц",

command = lambda p=u"Количество таблиц" :Param(p))

#MB_PARAM.menu.add("cascade", label = u"Тема дипломного проэкта",

command = lambda p=u"Тема дипломного проэкта" :Param(p))

MB_PARAM.menu.add("cascade", label = u"Год", command = lambda

p=u"Год" :Param(p))

#************************************************************

************************

#Создание таблиц:sroot_widget_create(event = None):

self.status = 0 ## Окон верхнего уровня не существуетanalis(event = None): ## Опеределяем направление прокручинвания

для мышки (MouseWhell): ## Чтобы для внешнего виджета не работало

self.Frame_Listbox.focus_set()()event.delta < 0:():():Clear(event = None):.Listbox_01.select_clear("active").Listbox_02.itemconfig(self.pos, bg = "white").Listbox_03.itemconfig(self.pos, bg = "white")Perehod(event = None):.Listbox_01.activate(self.pos).Listbox_01.select_set(self.pos).Listbox_02.itemconfig(self.pos, bg = "grey").Listbox_03.itemconfig(self.pos, bg = "grey")Hod(event = None):.vibor = string.atoi(self.Listbox_01.curselection()[0]).pos = self.viborbind_but(event = None):

## На левую клавишу мыши.Frame_Listbox.focus_set(): self.vibor = string.atoi(self.Listbox_01.curselection()[0]): pass: self.vibor = string.atoi(self.Listbox_02.curselection()[0]): pass: self.vibor = string.atoi(self.Listbox_03.curselection()[0]): pass.pos = self.vibor

#print self.vibor_inf(self.vibor)()_focus_out()

## На левую клавишу мышиalt_bind_but(event = None):

## На альт + левая клваиша.Frame_Listbox.focus_set(): self.vibor = string.atoi(self.Listbox_01.curselection()[0]): pass: self.vibor = string.atoi(self.Listbox_02.curselection()[0]): pass: self.vibor = string.atoi(self.Listbox_03.curselection()[0]): pass.pos = self.vibor"alt"()_focus_out()

## На альт + левая клваиша.l_spis = 1

self.vibor = 0.h_spis = 10.pos = 0.prev_verh = 0.prev_nizz = self.h_spis - 1

def Down(event = None): ## Кнопка вниз - перемещение вниз всех

четырех списков

## Прокручиваем списки

## Если список находится в границе видимой облафсти - ее верх и низ

не меняется

if self.pos > self.prev_nizz:.prev_nizz = self.prev_nizz + 1.prev_verh = self.prev_verh + 1self.pos < self.prev_nizz:self.pos == self.prev_nizz:.Listbox_01.see(self.prev_nizz).Listbox_02.see(self.prev_nizz).Listbox_03.see(self.prev_nizz).Listbox_01.see(self.prev_verh).Listbox_02.see(self.prev_verh).Listbox_03.see(self.prev_verh)

## Прокручиваем спискиUp(event = None): ## Кнопка вверх - перемещение вверх всех трех

списков

Clear()self.pos > 0:.pos = self.pos - 1

Perehod()

## Прокручиваем списки

## Если список находится в границе видимой облафсти - ее верх и низ

не меняется

if self.pos < self.prev_verh:.prev_nizz = self.prev_nizz - 1.prev_verh = self.prev_verh - 1self.pos > self.prev_verh:self.pos == self.prev_verh:.Listbox_01.see(self.prev_nizz).Listbox_02.see(self.prev_nizz).Listbox_03.see(self.prev_nizz).Listbox_01.see(self.prev_verh).Listbox_02.see(self.prev_verh).Listbox_03.see(self.prev_verh)

## Прокручиваем списки.Frame_Listbox = Tkinter.LabelFrame(self.FRD).Frame_Listbox ["text"] = u"Уровни отсеивания".Frame_Listbox ["labelanchor"] = "n".Frame_Listbox ["relief"] = "ridge".Frame_Listbox ["takefocus"] = 1.Frame_Listbox.bind("<Down>", Down).Frame_Listbox.bind("<Up>", Up).Frame_Listbox.bind_all("<MouseWheel>", analis).Frame_Listbox.bind("<KeyRelease-Return>", Hod).Frame_Listbox.bind("<KeyRelease-space>", Hod).Frame_Listbox.place(relx = 0.5, rely = 0.5, anchor = "center")

#self.Frame_Listbox.focus_force()_01 = Tkinter.Label(self.Frame_Listbox)_01 ["text"] = u"Номер"_01.grid(row = 1, column = 1, sticky = "ensw").Label_01 = Label_01_02 = Tkinter.Label(self.Frame_Listbox)_02 ["text"] = u"Параметр"_02.grid(row = 1, column = 2, sticky = "ensw").Label_02 = Label_02_03 = Tkinter.Label(self.Frame_Listbox)_03 ["text"] = u"Значение"_03.grid(row = 1, column = 3, sticky = "ensw").Label_03 = Label_03.Scrol_BA = Tkinter.Scrollbar(self.Frame_Listbox).Scrol_BA ["command"] = self.OnVsb.Listbox_01 = Tkinter.Listbox(self.Frame_Listbox).Listbox_01 ["takefocus"] = 0.Listbox_01 ["width"] = 10.Listbox_01 ["height"] = self.h_spis.Listbox_01 ["yscrollcommand"] = self.Scrol_BA.set

#self.Listbox_01.insert("end", *date).Listbox_01.select_set(self.vibor).Listbox_01.activate(self.vibor).Listbox_01.bind("<ButtonRelease-1>", bind_but).Listbox_01.bind("<Alt-ButtonRelease-1>", alt_bind_but).Listbox_02 = Tkinter.Listbox(self.Frame_Listbox).Listbox_02 ["takefocus"] = 0.Listbox_02 ["width"] = 32.Listbox_02 ["height"] = self.h_spis.Listbox_02 ["yscrollcommand"] = self.Scrol_BA.set

#self.Listbox_02.insert("end", *date_sl)

#self.Listbox_02.itemconfig(self.vibor, background = "grey").Listbox_02.bind("<ButtonRelease-1>", bind_but).Listbox_02.bind("<Alt-ButtonRelease-1>", alt_bind_but).Listbox_03 = Tkinter.Listbox(self.Frame_Listbox).Listbox_03 ["takefocus"] = 0.Listbox_03 ["width"] = 40.Listbox_03 ["height"] = self.h_spis.Listbox_03 ["yscrollcommand"] = self.Scrol_BA.set

#self.Listbox_03.insert("end", *date)

#self.Listbox_03.itemconfig(self.vibor, background = "grey").Listbox_03.bind("<ButtonRelease-1>", bind_but).Listbox_03.bind("<Alt-ButtonRelease-1>", alt_bind_but).Listbox_01.grid(row = 2, column = 1, sticky = "ensw").Listbox_02.grid(row = 2, column = 2, sticky = "ensw").Listbox_03.grid(row = 2, column = 3, sticky = "ensw").Scrol_BA.grid(row = 2, column = 6, sticky = "ensw")

def from_focus_in(event = None): ## При появлении фокуса - выделение

на бывший элементself.status == 0: ## Переход между элементами root, а не окнами...

self.Listbox_01.select_set(self.vibor).Listbox_01.activate(self.vibor).Listbox_02.itemconfig(self.vibor, background = "grey").Listbox_03.itemconfig(self.vibor, background = "grey").Listbox_01.see(self.prev_nizz).Listbox_02.see(self.prev_nizz).Listbox_03.see(self.prev_nizz).Listbox_01.see(self.prev_verh).Listbox_02.see(self.prev_verh).Listbox_03.see(self.prev_verh)

else: ## Переход между окнами - например, возвращение из окна .root_comment

self.status = 0.Frame_Listbox.bind("<FocusIn>", from_focus_in)

def from_focus_out (event = None): ## При потере фокуса - уходит и

выделение

self.Listbox_01.select_clear("active").vibor = self.posi in range(self.l_spis):.Listbox_02.itemconfig(i, background = "white").Listbox_03.itemconfig(i, background = "white").Frame_Listbox.bind("<FocusOut>", from_focus_out)_widget_create()__delattr__ (self, a):

self.FRD.destroy()OnVsb (self, *args): ## Для одновременного прокручивания

нескольких списков

self.Listbox_01.yview(*args).Listbox_02.yview(*args).Listbox_03.yview(*args)__name__ == "__main__":= Tkinter.Tk().geometry("1024x768+0+0")_font = tkFont.Font()_font ["family"] = "Helvetica"_font ["size"] = 18_font ["weight"] = "normal"_data(root,all_font).mainloop()

preview_find.py

# -*- coding: utf-8-*-TkinterScrolledTexttkFontosstringpickletkFileDialogImageImageTkpreview_find:__init__(self, root,all_font,res_data,number_of_path):(root,all_font,res_data,number_of_path)__call__(self,root,all_font,res_data,number_of_path):.number_of_path = number_of_pathotmena(event = None):.FRC.destroy()

root.title(u"Просмотр результатов поиска")

self.dosm =

["Spec","Grup","Mark","God_1","Name_S","SName_S","LName_S","Nam

e_P","SName_P","LName_P","page","plac","pict","tabl"]

#Parametry =

["Специальность","Группа","Оценка",

"Год

защити","Р�РјСЏ","Фамилия","Отчество","Р

�мя2","Фамилия2","Отчество2","Тема

дипломного проэкта","Количество

страниц","Количество

плакатов","Количество

рисунков","Количество таблиц"]

self.Param_2 =

{"Spec":u"","Grup":u"","Mark":"","God_1":"","Name_S":"","SName_S":"",

"LName_S":"","Name_P":"","SName_P":"","LName_P":"","page":"","plac"

:"","pict":"","tabl":""}.FRC = Tkinter.Frame(root).FRC["width"] = 1024.FRC["height"] = 768.FRC.place(relx = 0, rely = 0, anchor = "nw" ).stud_inf = res_data[number_of_path]= Tkinter.LabelFrame(self.FRC)["text"] = u"Специальность"["font"] = all_font.place(relx = 0.02, rely = 0.03, anchor = "w").Ent1 = Tkinter.Entry(LaFR1).Ent1["width"] = 40.Ent1.insert( "end" ,self.stud_inf.get("Spec")).Ent1 ["state"] = "disabled".Ent1.pack()= Tkinter.LabelFrame(self.FRC)["text"] = u"Группа"["font"] = all_font.place(relx = 0.34, rely = 0.03, anchor = "w").Ent2 = Tkinter.Entry(LaFR2).Ent2["width"] = 10.Ent2.insert("end" ,self.stud_inf.get("Grup")).Ent2 ["state"] = "disabled".Ent2.pack()= Tkinter.LabelFrame(self.FRC)["text"] = u"Оценка"["font"] = all_font.place(relx = 0.42, rely = 0.03, anchor = "w").Ent3 = Tkinter.Entry(LaFR3).Ent3.insert("end" ,self.stud_inf.get("Mark")).Ent3["width"] = 10.Ent3 ["state"] = "disabled".Ent3.pack()= Tkinter.LabelFrame(self.FRC)

LaFR4["text"] = u"Год защити"

LaFR4["font"] = all_font.place(relx = 0.5, rely = 0.03, anchor = "w").Ent4 = Tkinter.Entry(LaFR4).Ent4["width"] = 10.Ent4.insert("end" ,self.stud_inf.get("God_1")).Ent4 ["state"] = "disabled".Ent4.pack()= Tkinter.LabelFrame(self.FRC)["text"] = u"Степень"["font"] = all_font.place(relx = 0.66, rely = 0.03, anchor = "w").Ent123 = Tkinter.Entry(LaFR5).Ent123["width"] =17.Ent123.insert("end" ,self.stud_inf.get("Stepen")).Ent123 ["state"] = "disabled".Ent123.pack()_Date_1 = Tkinter.LabelFrame(self.FRC)

LaFR_Date_1["text"] = u"Данные о студенте"

LaFR_Date_1["font"] = all_font_Date_1.place(relx = 0.01, rely = 0.12, anchor = "w")_Date_1["width"] = 924_Date_1["height"] = 85= Tkinter.LabelFrame(LaFR_Date_1)["text"] = u"Имя"["font"] = all_font.place(relx = 0.01, rely = 0.5 , anchor = "w").Ent6 = Tkinter.Entry(LaFR6).Ent6["width"] = 40.Ent6.insert("end" ,self.stud_inf.get("Name_S")).Ent6 ["state"] = "disabled".Ent6.pack()= Tkinter.LabelFrame(LaFR_Date_1)["text"] = u"Фамилия"["font"] = all_font.place(relx = 0.5, rely = 0.5 , anchor = "center").Ent7 = Tkinter.Entry(LaFR7).Ent7["width"] = 40.Ent7.insert("end" ,self.stud_inf.get("SName_S")).Ent7 ["state"] = "disabled".Ent7.pack()= Tkinter.LabelFrame(LaFR_Date_1)["text"] = u"Отчество"["font"] = all_font.place(relx = 0.99, rely = 0.5 , anchor = "e").Ent8 = Tkinter.Entry(LaFR8).Ent8["width"] = 40.Ent8.insert("end" ,self.stud_inf.get("LName_S")).Ent8 ["state"] = "disabled".Ent8.pack()_Date_2 = Tkinter.LabelFrame(self.FRC)

LaFR_Date_2["text"] = u"Данные о научном руководителе"

LaFR_Date_2["font"] = all_font_Date_2.place(relx = 0.01, rely = 0.25, anchor = "w")_Date_2["width"] = 924_Date_2["height"] = 85= Tkinter.LabelFrame(LaFR_Date_2)["text"] = u"Имя"["font"] = all_font.place(relx = 0.01, rely = 0.5 , anchor = "w").Ent9 = Tkinter.Entry(LaFR9).Ent9["width"] = 40.Ent9.insert("end" ,self.stud_inf.get("Name_P")).Ent9 ["state"] = "disabled".Ent9.pack()= Tkinter.LabelFrame(LaFR_Date_2)["text"] = u"Фамилия"["font"] = all_font.place(relx = 0.5, rely = 0.5 , anchor = "center").Ent10 = Tkinter.Entry(LaFR10).Ent10["width"] = 40.Ent10.insert("end" ,self.stud_inf.get("SName_P")).Ent10 ["state"] = "disabled".Ent10.pack()= Tkinter.LabelFrame(LaFR_Date_2)["text"] = u"Отчество"["font"] = all_font.place(relx = 0.99, rely = 0.5 , anchor = "e").Ent11 = Tkinter.Entry(LaFR11).Ent11["width"] = 40.Ent11.insert("end" ,self.stud_inf.get("LName_P")).Ent11 ["state"] = "disabled".Ent11.pack()_Date_3 = Tkinter.LabelFrame(self.FRC)

LaFR_Date_3["text"] = u"Тема дипломного проэкта"

LaFR_Date_3["font"] = all_font_Date_3.place(relx = 0.01, rely = 0.32, anchor = "nw").ST =ScrolledText.ScrolledText(LaFR_Date_3,background="white").ST.insert("end" ,self.stud_inf.get("Theme")).ST["width"] = 150.ST["height"] =7.ST["state"] = "disabled".ST.pack()_Date_4 = Tkinter.LabelFrame(self.FRC)

LaFR_Date_4["text"] = u"Данные о дипломном проэкте"

LaFR_Date_4["font"] = all_font_Date_4.place(relx = 0.01, rely = 0.55, anchor = "w")_Date_4["width"] = 924_Date_4["height"] = 90= Tkinter.LabelFrame(LaFR_Date_4)

LaFR12["text"] = u"Количество страниц"

LaFR12["font"] = all_font.place(relx = 0.01, rely = 0.5 , anchor = "w").Ent12 = Tkinter.Entry(LaFR12).Ent12["width"] = 32.Ent12.insert("end" ,self.stud_inf.get("page")).Ent12 ["state"] = "disabled".Ent12.pack()= Tkinter.LabelFrame(LaFR_Date_4)

LaFR13["text"] = u"Количество плакатов"

LaFR13["font"] = all_font.place(relx = 0.38, rely = 0.5 , anchor = "center").Ent13 = Tkinter.Entry(LaFR13).Ent13["width"] = 32.Ent13.insert("end" ,self.stud_inf.get("plac")).Ent13 ["state"] = "disabled".Ent13.pack()= Tkinter.LabelFrame(LaFR_Date_4)

LaFR14["text"] = u"Количество рисунков"

LaFR14["font"] = all_font.place(relx = 0.52, rely = 0.5 , anchor = "w").Ent14 = Tkinter.Entry(LaFR14).Ent14["width"] = 32.Ent14.insert("end" ,self.stud_inf.get("pict")).Ent14 ["state"] = "disabled".Ent14.pack()= Tkinter.LabelFrame(LaFR_Date_4)

LaFR15["text"] = u"Количество таблиц"

LaFR15["font"] = all_font.place(relx = 0.99, rely = 0.5 , anchor = "e").Ent15 = Tkinter.Entry(LaFR15).Ent15["width"] = 32.Ent15.insert("end" ,self.stud_inf.get("tabl"))

#print self.stud_inf.get("tabl").Ent15 ["state"] = "disabled".Ent15.pack()number_1 (event = None):_n("1")number_2 (event = None):_n("-1")p_n (event = None):

#print self.number_of_path

#print string.atoi(event).number_of_path = self.number_of_path + string.atoi(event)self.number_of_pathself.number_of_path < 0:.number_of_path = 0::= res_data[self.number_of_path]:.number_of_path = self.number_of_path - 1(self.number_of_path)

But1["text"] = u"Завершить просмотр"

But1.bind("<Button-1>",otmena)__delattr__ (self, a):.FRC.destroy()

#print u"ok))))))))))))))))))"__name__ == "__main__":= Tkinter.Tk().geometry("1024x768+0+0")_font = tkFont.Font()_font ["family"] = "Helvetica"_font ["size"] = 14_font ["weight"] = "normal"_of_path = 2_data = [{'Spec': 'AAG', 'Name_S': 'B', 'Name_P': 'B', 'pict': '3', 'God_1':

Источник: https://www.bibliofond.ru/detail.aspx?id=787634