Найти - Пользователи
Полная версия: tkinter и кнопки во frame [решено]
Начало » GUI » tkinter и кнопки во frame [решено]
1
Liberty
Знакомлюсь с tkinter, делаю пример из книги.
from tkinter import *
def func():
    print('Hello!')
window = Frame()
window.pack()
Label = (window).pack(side=TOP)
Button = (window, text = 'Hello, my friend', command = func).pack(side = LEFT)
Button = (window, text='Quit', command = win.quit).pack(side = RIGHT)
win.mainloop()

Выдаёт следующее:
File "workspace/tkinter/button.py", line 7
    Button = (window, command = win.quit, text='Quit').pack(side = RIGHT)
                              ^
SyntaxError: invalid syntax
Вопрос стандартный: в чём ошибка?
sp3
Ошибка в книге: используйте другую.
4kpt
sp3
Лаконично так…
4kpt
Предварительно должно создаваться окно, на котором размещаются все объекты. Это окно у Вас именуестя win, но где оно создается - неизвестно. Вообще его чаще называют root. Рекомендую почитать munual к Tkinter на русском. Он есть на многих ресурсах. Там более подробно все написано и описано.

# -*- coding:utf-8 -*-

import Tkinter

def func():
print('Hello!')
def die():
win.destroy()

win = Tkinter.Tk() #Создание корнеового окна на котором будут размещатся все элементы
window = Tkinter.Frame(win).pack() # Создание рамки
Label_1 = Tkinter.Label(window, text = u"Подпись").pack(side=TOP)
btn_ok = Tkinter.Button(window, text='Hello, my friend', command=func).pack(side=LEFT)
btn_die = Tkinter.Button(window, text='Quit', command=die).pack(side=RIGHT)
win.mainloop()
Это если ее довести до ума…
Griffon
Вообще там ошибка в основах питона. А именно знак равно применяется неправильно при передаче параметра.
Liberty
Спасибо всем, ошибка ясна. Да, пожалуй, лучше начинать ознакомление с мануала
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