Разработать программу, имеющую графический интерфейс, которая позволяет считывать информацию из файла в соответствующие виджеты: Label, Entry, Text
У меня есть код, который считывает с Entry и Text некий текст, который вводит пользователь, и записывает его в файл. Нужно создать функции для считывания и вывода из этих файлов в Entry, Text, Label.
from tkinter import *
from tkinter import ttk
def registration():
global entry
def get_entry():
s = txt.get()
file = open("test.txt", "a")
file.write(s)
file.close()
def insert_text():
s = input()
text.insert(1.0, s)
def get_text():
s = text.get(1.0, END)
file = open("MyText.txt", "a")
file.write(s)
file.close()
def delete_text():
text.delete(1.0, END)
window = Tk()
window.title("Лабораторная №7")
window.geometry('650x300')
tab_control = ttk.Notebook(window)
tab1 = ttk.Frame(tab_control)
tab_control.add(tab1, text='Запись в файл через Entry')
tab_control.pack(expand=1, fill='both')
tab2 = ttk.Frame(tab_control)
tab_control.add(tab2, text='Запись в файл через Text')
tab_control.pack(expand=1, fill='both')
tab3 = ttk.Frame(tab_control)
tab_control.add(tab3, text='Чтение из файла через Entry')
tab_control.pack(expand=1, fill='both')
tab4 = ttk.Frame(tab_control)
tab_control.add(tab4, text='Чтение из файла через Text')
tab_control.pack(expand=1, fill='both')
lbl = Label(tab1,text="Введите текст, который хотите записать в файл")
lbl.grid(column=1, row=0, padx=170, pady=10)
txt = Entry(tab1,width=20)
txt.grid(column=1, row=1, padx=0, pady=10)
btn = Button(tab1, text="Записать в файл", command=get_entry)
btn.grid(column=1, row=2, padx=0, pady=10)
text = Text(tab2, width=30, height=5)
text.pack()
Button(tab2, text="Сохранить в файл",
command=get_text).pack(side=LEFT)
Button(tab2, text="Очистить поле ввода",
command=delete_text).pack(side=LEFT)
label = Label()
label.pack()
window.mainloop()
Может есть какие-нибудь идеи, как это сделать?
Ответы (1 шт):
Автор решения: ПИТОНИСТ версия-3-8
→ Ссылка
Напишите вот это (если я правильно Вас понял):
te=open('test.txt') #или надо MyText.txt вместо test.txt
Label(window, text=te.read()).pack()