Как вы предотвращаете выход неопределенного количества текстов за пределы окна tkinter?

#python #tkinter

#python #tkinter

Вопрос:

Я новичок в Tkinter и пытаюсь создать средство поиска слов с помощью модуля PyDictionary. Но это привело к проблеме выпадения определений из фиксированных окон после вставки слова, которое вы хотите узнать. Это немного сбивает с толку, поскольку не каждое определение имеет одинаковый объем описания. Что мне делать?

код:

 from PyDictionary import PyDictionary
import tkinter as tk

dictionary = PyDictionary()

root = tk.Tk()
root.title("Word Finder")

canvas1 = tk.Canvas(root, width=400, height=300)
root.maxsize(400, 300)
root.minsize(400, 300)
canvas1.pack()

title = tk.Label(root, text="Word Finder")
canvas1.create_window(200, 100, window=title)

entry1 = tk.Entry(root)
canvas1.create_window(200, 140, window=entry1)


def getSquareRoot():
    x1 = entry1.get()

    try:
        label1 = tk.Label(root, text=dictionary.meaning(x1))
    except UnboundLocalError:
        label1 = tk.Label(root, text="Word Not Found")
    canvas1.create_window(200, 230, window=label1)


button1 = tk.Button(text='Search', command=getSquareRoot)
canvas1.create_window(200, 180, window=button1)

root.mainloop()
 

Комментарии:

1. Возможно ли изменить ваш пример, чтобы использовать небольшое подмножество жестко закодированных данных вместо использования внешнего модуля?

2. Используйте Text виджет вместо Label виджета для результата.