2013-12-16 2 views
1

Я экспериментировал с помощью виджетов ввода и переменной привязки к функциям с помощью ТКА и питона 3.2Несколько TTK Вступительного Widgets Причинения Синтаксической ошибки

я получаю синтаксическую ошибку здесь и не могу найти его.

from tkinter import * 
from tkinter import ttk 

def overlap(*args): 
    start = begin.get() 
    stop = end.get() 
    time.set(int(stop)-int(start)) 

root = Tk() 
root.title('RadioButton') 

mainframe=ttk.Frame(root, padding='3 3 12 12') 
mainframe.grid(column=0, row=0, sticky=(N, W, E, S)) 
mainframe.columnconfigure(0, weight=1) 
mainframe.rowconfigure(0, weight=1) 

begin = StringVar() 
end = StringVar() 
time = StringVar() 

start_entry = ttk.Entry(mainframe, textvariable = begin) 
start_entry.grid(column=1, row=1, sticky=(E, W) 

end_entry = ttk.Entry(mainframe, textvariable = end) 
end_entry.grid(column=2, row=1, sticky=(E, W) 

ttk.Lable(mainframe, textvariable=time).grid(column=1, row=2, sticky=(E, W)) 

ttk.Button(mainframe, text='calculate', command=overlap).grid(column=1, row=3, sticky=(E, W)) 

begin_entry.focus() 

root.bind('<Return>', overlap) 

root.mainloop() 

Я потерян, что мне не хватает? Ошибка это дает мне:

end_entry = ttk.Entry(mainframe, textvariable = end)

SyntaxError: invalid syntax

Как я предполагаю, что вы можете сказать, что я не знаю много о TTK поэтому, пожалуйста, попробуйте и объясните мне, как я около 5.

ответ

1

Ты отсутствует закрывающая скобка на линии перед:

start_entry.grid(column=1, row=1, sticky=(E, W) 
#           ^
end_entry = ttk.Entry(mainframe, textvariable = end) 

как правило, если вы когда-нибудь, что вы получаете необъяснимую ошибку синтаксиса, убедитесь, что предыдущие линии имеют правильно закрытую скобку.

+0

OMG !!! Если бы вы только знали, как долго я смотрю на эту WTF. Благодаря!!! – RabidGorilla

+0

Оказалось, что таких ошибок было много. Нашел остальные, хотя. – RabidGorilla

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