Форум сайта python.su
Читаю доку по Tkinter, у кнопок есть свойство “image”. В доке об этом, как водится, два слова и молчок. Не могу догнать, как использовать это свойство. Можно, скажем, загнать на кнопку картинку из указанного ico-файла? (у меня ActivePython, WinXP) Если можно, прошу пример кода, пару строк.
Офлайн
правильная книга http://www.nmt.edu/tcc/help/lang/python/tkinter.pdf
как подсказывает здравый опыт отображать на кнопке можно объект PhotoImage или BitmapImage. Через PIL в такие объекты можно превращать jpg или png, но ico скорее всего не получится.
Офлайн
А можно хоть какой-то пример кода (хоть две строчки) с PhotoImage или BitmapImage? “Правильная” книга тоже не содержит примера…
Инструкция “import Image” приводит к ошибке.
P.S. Кстати, также не ясно назначение свойства кнопки “default”. Изменение этого свойства ни к чему не приводит…
Офлайн
Вот такой код приводит к отображению микроскопической кнопки без текста и рисунка:
# -*- coding: cp1251 -*-
from Tkinter import *
import sys
def die():
sys.exit()
root = Tk()
button = Button(root, text = u"Кнопка", command = die)
img = BitmapImage('C:\\Wall\\Abstract_4396.jpg')
button["image"] = img
button.pack()
root.mainloop()
Офлайн
Всё, дошло. Tkinter умеет работать только с GIF (нужно использовать объект PhotoImage).
Что можно сделать в данном случае с объектом BitmapImage, я так и не понял (похоже, что ничего).
Офлайн
Все ники занятыПример кода (не две строчки, конечно):
А можно хоть какой-то пример кода (хоть две строчки) с PhotoImage или BitmapImage? “Правильная” книга тоже не содержит примера…
Инструкция “import Image” приводит к ошибке.
P.S. Кстати, также не ясно назначение свойства кнопки “default”. Изменение этого свойства ни к чему не приводит…
Отредактировано (Июнь 23, 2007 12:55:50)
Офлайн
по поводу PIL и Tkinter рекомендую проштудировать учебник на сайте effbot.org
Офлайн
по поводу default - если установить это свойство в DISABLED, то кнопка будет с серым текстом и не реагировать на клик мышкой
Офлайн
bialixА вот и нет :(
по поводу default - если установить это свойство в DISABLED, то кнопка будет с серым текстом и не реагировать на клик мышкой
# -*- coding: cp1251 -*-
from Tkinter import *
import sys
def die():
sys.exit()
root = Tk()
button = Button(root, text = u"Кнопка", command = die)
button["default"] = DISABLED
button.pack()
root.mainloop()
Отредактировано (Июнь 23, 2007 13:01:54)
Офлайн
Ссылки по теме:
PIL: http://effbot.org/zone/pil-index.htm
Книжка по Tkinter: http://www.pythonware.com/library/tkinter/introduction/
И вот еще: http://effbot.org/tkinterbook/
Офлайн