LINUX.ORG.RU

Помогите с написанием кода в tkinter

 , ,


0

1
from tkinter.filedialog import *
from tkinter import*


def open_file():
    pass

def save_file():
    pass

def save_fil(event):
    pass


def exit_prog():
    root.destroy()



root = Tk()
root.geometry('800x600')
root.resizable(width=False, height=False)

root_menu = Menu(root)
root.configure(menu=root_menu)
one_item = Menu(root_menu, tearoff=0)
root_menu.add_cascade(label="Файл", menu=one_item)
one_item.add_command(label="Открыть", command=open_file)
one_item.add_command(label="Сохранить как ...", command=save_file)
one_item.add_separator()
one_item.add_command(label="Выход",
command=exit_prog)

#Надписи

n1 = Label(root, text="Тип звонка:")
n2 = Label(root, text="Дата звонка:")
n3 = Label(root, text="Время звонка:")
n4 = Label(root, text="Имя клиента:")
n6 = Label(root, text="Телефон:")
n5 = Label(root, text="Автомобиль:")
n7 = Label(root, text="Коментарии:", font=("Ubuntu", 30))
#n8 = Label(root, text=":")

n1.grid(row=2, column=1, sticky="W", pady=7, padx=15,)
n2.grid(row=6, column=1, sticky="W", pady=7, padx=15,)
n3.grid(row=10, column=1, sticky="W", pady=7, padx=15,)
n4.grid(row=2, column=11, sticky="W", pady=7, padx=20,)
n5.grid(row=6, column=11, sticky="W", pady=7, padx=20,)
n6.grid(row=10, column=11, sticky="W", padx=20, pady=7)
n7.place(x=10, y=150)
#n8.grid(row=6, column=15, sticky="W", pady=7, padx=20,)


#Поля для галочек

pg1 = Checkbutton(root, text="Лучший звонок")
pg2 = Checkbutton(root, text="Механика")
pg3 = Checkbutton(root, text="Автомат")
pg4 = Checkbutton(root, text="Бензин")
pg5 = Checkbutton(root, text="ДТ")

pg1.grid(row=11, column=14, columnspan=2)
pg2.grid(columnspan=2, row=11, column=1)
pg3.grid(columnspan=2, row=11, column=3, sticky="W")
pg4.grid(columnspan=1, row=11, column=11, sticky="W")
pg5.grid(columnspan=2, row=11, column=13, sticky="W")


#Поля для ввода

p1 = Entry(root)
p2 = Entry(root)
p3 = Entry(root)
p4 = Entry(root, width=40)
p5 = Entry(root, width=40)
p6 = Entry(root)
p7 = Text(root, width=86, height=14, font=("Ubuntu", 12), wrap='word')



p1.grid(row=2, column=3)
p2.grid(row=6, column=3)
p3.grid(row=10, column=3)
p4.grid(row=2, column=14)
p5.grid(row=6, column=14)
p6.grid(row=10, column=14, sticky="W")
p7.place(x=10, y=200)

#Кнопки

kn1 = Button(root, text="Сохранить")
kn1.bind("<Button-1>", save_fil)

kn1.place(x=680, y=550)


#Картинка
#im ="/home/master/агс.png"
#ph_im =PhotoImage(file=im)
#canv111 = Canvas(root,)
#canv111.create_image(1,1,anchor=NW,image=ph_im)
#canv111.place(x=20, y=470)


root.mainloop()


Помогите пожалуйста дописать надо чтоб всю вводимую информацию 

записывал/до записывал в файл из каждого поля и подскажите как 

правильно оформлять код мне просто сказали что так не правильно. 

Пример выше


Последнее исправление: alexhaky (всего исправлений: 1)

Ответ на: комментарий от Fedorast

Я не знаю tkinter, но за такие названия переменных надо бить мануалом по голове.

а как правильно? ..хоть пару примеров.

lmx2315
()
Ответ на: комментарий от lmx2315

Да даже сложно что-то предложить, u136225.

Deleted
()
Ответ на: комментарий от lmx2315

Какие примеры? Нормального наименования функций? Английскими словами, в самом крайнем случае (если код только для себя) - транслитом. Указывать в названии функцию элемента (CloseButton, DoItSilentCheckbox).

Fedorast
()
Ответ на: комментарий от conformist

А можешь объяснить что и для чего тут

alexhaky
() автор топика
Ответ на: комментарий от Fedorast

Я не знаю tkinter, но за такие названия переменных надо бить мануалом по голове.

Я просто только учусь и мне кажется для простоты так проще или так нельзя делать ?

alexhaky
() автор топика

Так можно. Можно и случайные буквосочетания - это вопрос поддержки кода в будущем, просто есть все шансы через неделю зайти в этот же код и ничего не понять.

Fedorast
()
Ответ на: комментарий от Fedorast

Теперь понятно спасибо просто насчёт названий переменных не чего не говорилось в учебнике вот из за этого они такие

alexhaky
() автор топика
Ответ на: комментарий от Fedorast

ну да но только не мануалом по голве))))

alexhaky
() автор топика
30 декабря 2017 г.

функции в python для сохранения/открытия/создания

ну вот мои функции:

from tkinter import *
from tkinter.filedialog import asksaveasfile, askopenfile
from tkinter.messagebox import showerror

FILE_NAME = NONE
class File():
	def new():
		global text
		FILE_NAME = "Untiled"
		text.delete('1.0', END)

	def save():
		global text
		t = text.get('1.0', END)
		f = open(FILE_NAME, "w")
		f.write(t)
		f.close()

	def saveas():
		f = asksaveasfile(mode='w',defaultextension='.txt')
		t = text.get('1.0', END)
		try:
			f.write(t.rstrip())
		except Exception:
			showerror(title="Oops!", message="Unable to save file....")
	def openfile():
		inp=askopenfile(mode="r")
		if imp is None:
			return
		FILE_NAME = inp.name

		data = inp.read()
		text.delete('1.0', END)
		text.insert('1.0', data)
stalker320
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.