Поскольку я реализовал get("1.0", END)
, мое приложение больше не запускается. Что я могу сделать, чтобы решить эту проблему? Я перепробовал все ..
Пробовал несколько разных индексов, но так как я хочу получить полнотекстовую строку из этого текстового поля, другой индекс не подходит.
from tkinter import *
from tkinter import Text
from tkinter import ttk
import datetime
import csv
window = Tk()
window.resizable(0, 0)
mainframe = Frame(window)
mainframe.grid()
mainframe.pack(fill=BOTH, expand = 1, padx = 20, pady = 20)
mainframe.rowconfigure(4, weight = 1)
# Button functions
def save_csv():
# variables
now = datetime.datetime.now()
name = name_textfield.get()
company = company_textfield.get()
phone = phone_textfield.get()
mail = mail_textfield.get()
reason = reason_textfield.get("1.0", END)
with open("Data.csv", "a") as d:
w = csv.writer(d, dialect ="excel-tab")
w.writerow([now.strftime("%d-%m-%Y %H:%M"), name, company, phone, mail, reason])
d.close()
# Name
name_label = Label(mainframe, text = "Naam:")
name_label.grid(row = 0)
name_textfield = Entry(mainframe)
name_textfield.grid(row = 0, column = 1)
# Company
company_label = Label(mainframe, text = "Bedrijf:")
company_label.grid(row = 1)
company_textfield = Entry(mainframe)
company_textfield.grid(row = 1, column = 1)
# Phone number
phone_label = Label(mainframe, text ="Telefoon:")
phone_label.grid(row = 2)
phone_textfield = Entry(mainframe)
phone_textfield.grid(row = 2, column = 1)
# Mail Address
mail_label = Label(mainframe, text ="Mail:")
mail_label.grid(row = 3)
mail_textfield = Entry(mainframe)
mail_textfield.grid(row = 3, column = 1)
# Reason
reason_label = Label(mainframe, text ="Reden:")
reason_label.grid(row = 4)
reason_textfield = Text(mainframe, height = 10, width = 23, wrap = WORD, font = ("Arial", 13), highlightcolor = "#87b2e8", highlightbackground = "Grey", highlightthickness = 1)
reason_textfield.grid(row = 4, column = 1)
# Button
export = ttk.Button(mainframe, text = "Save", command = save_csv())
export.grid(row = 5, column = 1)
export.pack()
mainframe.mainloop()