2015-05-08 4 views
-2
lbl1 = Label(root, text="Target:").pack() 
box1 = Entry(root).pack() 
lbl2 = Label(root, text="Port:").pack() 
box2 = Entry(root).pack() 

ps_target = #value given to box1 

Я пытаюсь сделать значение, которое я даю box1, чтобы появиться в моей переменной «ps_target». Как мне это сделать? Я использую модуль Tkinter в Python 2.7.6.Как присвоить значение TextBox переменной в Python?

Если вам нужно больше деталей, пожалуйста, дайте мне знать, я дам как можно больше.

+0

ps_target .set (box1.get()) – Pawan

+0

Файл «/ USR /lib/python2.7/lib-tk/Tkinter.py ", строка 1489, в __call__ return self.func (* args) Файл" test.py ", строка 49, в port_scan ps_target .set (ebox1.get()) NameError: глобальное имя 'ps_target' не определено /: – Jet

+0

попробуйте ссылку @Leon shared – Pawan

ответ

0

Entry(root).pack() означает упаковку записи в родительском виджетах root. Это не возвращает box1. Нет смысла назначать объект none новой переменной. Так что, если вы хотите работать этот объект ввода, вы должны написать так:

my_entry = Entry(root) 
my_entry.pack() 
# do anything you like to my_entry here like my_entry.winfo_width() 
1

Есть две проблемы, сначала вы должны называть пакет отдельно. Вместо

box1 = Entry(root).pack() 

Вы должны сделать

box1 = Entry(root) 
box1.pack() 

Чтобы получить значение из box вы затем вызвать get

box1.get() 
+0

Я должен что-то делать неправильно. – Jet

Смежные вопросы