2013-07-12 10 views
2

Я пытаюсь сделать кнопку Tkinter, которая использует изображение, а при нажатии будет выполнять функцию on_button(). Мой текущий код показан ниже.Кнопка, сделанная из изображения - Tkinter

b = Button(root, image = play, command = on_button) 

Однако это всего лишь изображение с серым контуром вокруг него. Я хочу иметь возможность просто иметь изображение, которое можно щелкнуть, чтобы выполнить on_button, но не может понять, как это сделать.

ответ

2

Используйте relief вариант.

b = Button(root, image=play, command=on_button, relief=FLAT) 

UPDATE

Согласно @BryanOakley, на OSX, кнопка с облегчением = FLAT не работает. Используйте Label виджет:

lb = Label(root, image=play) 
lb.bind('<Button-1>', lambda e: on_button) 
lb.pack() 
+0

Это не будет работать на OSX, потому что OSX _really_ хочет ваши кнопки, чтобы посмотреть, как кнопки. В этом случае вы можете использовать метку и добавить свои собственные привязки для мыши. –

+0

@BryanOakley, Спасибо за совет. Я добавил версию Label. – falsetru

+0

Прекрасно работает, спасибо –

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