Найти - Пользователи
Полная версия: Смена картинки при направлении на кнопку
Начало » GUI » Смена картинки при направлении на кнопку
1
Albert.Novikov
Как сделать так чтобы когда мышь направляли на кнопку(кнопку с картинкой) картинка на кнопке менялась на другую, а когда курсор уходил обратно на прошлую?
Ferroman
wxBitmapButton::GetBitmapHover
const wxBitmap& GetBitmapHover() const wxBitmap& GetBitmapHover()
Returns the bitmap used when the mouse is over the button, may be invalid.
wxBitmapButton::SetBitmapHover
void SetBitmapHover(const wxBitmap& bitmap)
Sets the bitmap to be shown when the mouse is over the button.
This function is new since wxWidgets version 2.7.0 and the hover bitmap is currently only supported in wxMSW.
Albert.Novikov
Спасибо Ferroman, но я забыл сказать что мне нужно сделать это в Tk(всмысле Tk интерфейс) и еще нужно чтобы не GIF`к была а PNG картинка на кнопке. Вообщем, мне нужно чтобы подсвечивалась кнопка.

P.S Это я игру делаю.
Ferroman
def hover(event):
global img
src_image = Image.open(<your image1>)
img = ImageTk.PhotoImage(src_image)
event.widget["image"]=img

def uhover(event):
global img # надо делать глобальным, иначе не разрешается нормально картинка. С использованием ООП нету такой проблемы :)
src_image = Image.open(your image2)
img = ImageTk.PhotoImage(src_image)
event.widget["image"]=img

root.title("Tk gui")

src_image = Image.open(<your image1>) # формат картинки может быть практически любой - png, jpg, bmp, gif...
img = ImageTk.PhotoImage(src_image)
e = Button(root, image=img, relief=RIDGE)
e.grid(row=0, column=0)
e.bind("<Enter>", hover) # при заход курсора над кнопкой
e.bind("<Leave>", uhover) № при выход из неё
root.mainloop()
Albert.Novikov
Спасибо, Ferroman! Сразу видно - настоящий питонер! :)

Я примерно так и думал сделать, что Enter и Leave, и функции выполняют, переменное значение для картинки… Но я начинающий в питоне и не знал как это все прикрепить к кнопке.
Albert.Novikov
Клево, все работает! Еще раз спасибо. Теперь мне не составит трудов сделать так чтобы и менялась картинка когда нажали и держат, нажималась кнопка Enter'ом и.т.д
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