2013-07-23 2 views
0

Я новичок в Python (2.7.5). Итак, вот основной вопрос:Кнопка Python/Tkinter и запись в том же окне

Я пытаюсь создать окно как с Button, так и с какой-либо записью, но по какой-то причине это не работает. Если я пытаюсь сделать окно с только записями или только кнопкой, оно работает, но не одновременно с кнопкой и записью.

поэтому вопрос в основном: Как создать окно с помощью кнопки и записи?

Ниже некоторые сценарий:

from Tkinter import* 

def super_function(): 
    fen1.quit 

fen1 = Tk() 
entr = [] 
for i in range(10): 
    entr.append(Entry(fen1)) 
    entr[i].grid(row=i) 
Button(fen1,text='store everything in a list',command=fen1.quit).pack(side=BOTTOM) 
fen1.mainloop() 

Спасибо!

ответ

0

Проблема в том, что вы используете pack и grid в то же время. Вместо этого вы должны использовать только один:

from Tkinter import * 

def super_function(): 
    fen1.quit 

fen1 = Tk() 
entr = [] 
for i in xrange(10): 
    entr.append(Entry(fen1)) 
    entr[i].grid(row=i) 
# Use grid instead of pack here 
Button(fen1,text='store everything in a list',command=super_function).grid() 
fen1.mainloop() 
+0

Waw благодарит много iCodez! –

+0

@ Remi.b: Не упоминайте об этом! Кроме того, если вы не заметили, я использовал 'xrange' вместо' range' для вашего цикла. 'range' генерирует ненужный список, где' xrange' возвращает итератор 'xrange'. Разница в том, что ваш код будет более чистым и быстрым. На всякий случай вам было интересно. – iCodez

+0

Мне действительно было интересно, что это было! спасибо –

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