Как получить текст метки Tkinter?
Im, создавая список адресов, которые пользователь выберет, и текст адреса будет возвращен. Мне нужно использовать Tkinter.Label
, потому что Tkinter.Listbox
не будет использовать символы новой строки.
В классе Label нет такого .get()
-подобного метода...
Я знаю, что могу сделать что-то вроде:
v = StringVar()
Label(master, textvariable=v).pack()
v.set("New Text!")
...
print v.get()
Тем не менее, у меня есть список из 5-20 адресов. "Сохранение отдельного массива StringVar()
будет сложно. b/c. У меня нет способа идентифицировать loc из активной метки. Я хотел бы просто получить доступ к активному содержимому виджета.
Является ли Tkinter.Label
правильным виджетами, которые будут использоваться?
Ответы
Ответ 1
Чтобы получить значение из метки, вы можете использовать метод cget
, который можно использовать для получения значения любого параметров конфигурации.
Например:
l = tk.Label(text="hello, world")
...
print("the label is", l.cget("text"))
Вы также можете рассматривать объект как словарь, используя опции в качестве ключей. Используя тот же пример, вы можете использовать l["text"]
.
Ответ 2
label = Label(text = 'Hello, World!')
print(label['text']) # output is: Hello, World!