Импорт tkinter as tk не работает с текстовым виджетом - PullRequest
0 голосов
/ 24 сентября 2019

Я пытался создать текстовый виджет с параметром import tkinter as tk, но я не знаю, почему текстовые методы не работают с моим объектом.Если я использую from tkinter import *, тогда все хорошо, но, как я прочитал, это не рекомендуемый метод импорта.Итак, не могли бы вы посоветовать, почему первый код работает, а второй нет?Чего мне не хватает?

Это работает:

from tkinter import *

root = Tk()
text = Text(root)
text.insert(INSERT, "Hello.....")
text.insert(END, "Bye Bye.....")
text.pack()

root.mainloop()

Это не так:

import tkinter as tk

root = tk.Tk()
text = tk.Text(root)
text.insert(INSERT, "Hello.....")
text.insert(END, "Bye Bye.....")
text.pack()

root.mainloop()

Спасибо

1 Ответ

2 голосов
/ 24 сентября 2019

, если вы используете:

import Tkinter as tk

INSERT - это константа , определенная в Tkinter , поэтому вам также необходимо предшествовать ей с помощью Tkinter.

вам нужно использовать INSERT, например:

tk.INSERT

ваш код:

import tkinter as tk

root = tk.Tk()
text = tk.Text(root)
text.insert(tk.INSERT, "Hello.....")
text.insert(tk.END, "Bye Bye.....")
text.pack()

root.mainloop()

в этом случае, если вы используете:

text.insert(INSERT, "Hello.....")

вы получите ошибку:

NameError: имя 'INSERT' не определено

...