Найти - Пользователи
Полная версия: Tk: заполнение Entry текстом
Начало » GUI » Tk: заполнение Entry текстом
1
Lunatic
Здраствуйте.

Я с питоном работаю месяца четыре, использую его для автоматизации back-end тестирования в нашей фирме. Тут понадобилось написать небольшое приложение для своих коллег из тестового департмента. В связи с этим у меня вопрос:

from Tkinter import *

if __name__ == '__main__':
root = Tk()

lbl = Label (root, text = "name").grid(row=1, column=0)
btn = Entry(root).grid()

root.mainloop()
Мне нужно заполнить секцию Entry текстом из настроек. Но как добавить этот текст, я все никак не могу найти.
Не могли бы вы мне подсказать?

Заранее спасибо
Lunatic
нашел ответ на этом же форуме.

from Tkinter import *

if __name__ == '__main__':
## create main window
root = Tk()

in_entry = StringVar()
in_entry.set('123')

lbl = Label (root, text = "Name").grid(row=1, column=0)
btn = Entry(root, width=20, textvariable = in_entry).grid()


root.mainloop()
всем спасибо, все свободны :)
igor.kaist
Lunatic, нет, это еще не все :)
У Entry еще есть методы insert, delete и много чего еще интересного.
Проще сделать btn.insert(END,text), чем заводить отдельную переменную, а потом сделать btn.get(), когда нужно будет получить данные из формы. С одним полем то нормально, но на 10 полей заводить 10 StringVar, ненормально.
Замечательный туториал по Tkinter в pdf
balu
igor.kaist
Проще сделать btn.insert(END,text)
И btn.clear() перед этим желательно. Тогда, может и переменная не помешает.
igor.kaist
balu
И btn.clear() перед этим желательно. Тогда, может и переменная не помешает.
Ну когда ты точно знаешь что там ничего нет, этого можно и не делать :)
Блин, про clear я забыл совсем, что то по привычке делал delete(0,END) :)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB