Python Tkinter Text Widget не отображает содержимое из файла .txt - PullRequest
0 голосов
/ 16 апреля 2020

В настоящее время я создаю Python программу Tkinter для редактирования и создания файлов .txt. При этом я создал систему открытия файлов, используя метод File Dialog, и путь, выбранный пользователем, был сохранен как: файловая переменная. Я перебрал файл и добавил его в текстовый виджет с помощью метода вставки. Я открыл тестовый файл .txt с содержанием в 2 строки. Это просто говорит: это тестовый файл. (Новая строка) используется для тестирования

Проблема в том, что текстовый виджет отображается пустым

Мой код:

from tkinter import *
from tkinter import FileDialog
master = Tk()

#all other code like filedialog opening code is here

editarea = Text(master,height=10,width=25)
editarea.grid(column=0,row=1)
f = open(file,"r")
for x in f:
    editarea.insert(END,x)

Этот код запускается в Python 3.7

Как заставить виджет Текст отображать содержимое файла .txt и все еще можно редактировать?

Большое спасибо (За будущее)

Я знаю, что приведенный выше код немного неуместен и не запустится, но, надеюсь, вы поймете суть моей проблемы:)

1 Ответ

0 голосов
/ 16 апреля 2020

вот лучшее решение, весь файл за раз

with open(file, "r") as txtr:
    data = txtr.read()
editarea.insert(END, data)

это здесь строка за строкой

with open(file, "r") as txtr:
    data = txtr.readlines()
for x in data:
    editarea.insert(END, x)

если по какой-то странной причине это не сработало, попробуйте это :

for x in range(len(data)):
    editarea.insert(END, data[x])
...