将鼠标悬停在按钮图像上时更改它们

采费尔卡

将鼠标悬停在按钮上时如何更改图像?我需要将鼠标悬停在按钮1或2上,图片会发生变化:

Photo1 = (file='Image\ProgrammingButton') 
Photo2 = (file='Image\DesignButton')  
But1 = (root, image=Photo1) 
But2 = (root, image=Photo2)

悬停时

Photo1 = (file='Image\ActiveProgrammingButton') 
Photo2 = (file='Image\ActiveDesignButton')
杰克逊

Tkinter具有“进入”和“离开”事件,您必须将它们绑定到某些功能,并且可以使用config方法更改图像

这是一个示范:


from tkinter import *
from PIL import Image, ImageTk

def onEnter(event):
    global img
    img = ImageTk.PhotoImage(Image.open(r'img2'))
    btn.config(image=img)

def onLeave(event):
    global img
    img = ImageTk.PhotoImage(Image.open(r'img1'))
    btn.config(image=img)
    

root = Tk()
img = ImageTk.PhotoImage(Image.open(r'img1')) 

btn = Button(root, image=img)
btn.pack()

btn.bind('<Enter>',  onEnter)
btn.bind('<Leave>',  onLeave)

root.mainloop()

如果要为许多按钮使用此效果。我建议您创建自己的继承Button的按钮

这是一个例子。

谢谢@furas建议。这是更新的课程

class Btn(Button):

    def __init__(self, root, img1, img2, *args, **kwargs):       
        super().__init__(root, *args, **kwargs)

        self.img = ImageTk.PhotoImage(Image.open(img1))
        self.img2 = ImageTk.PhotoImage(Image.open(img2))

        self['image'] = self.img
        
        self.bind('<Enter>', self.enter)
        self.bind('<Leave>', self.leave)
        
    def enter(self, event):
        self.config(image=self.img2)

    def leave(self, event):
        btn.config(image=self.img)

使用方法:只需在img1和img2参数中指定图像路径

这是一个例子:

img = r'path1' 
img2 = r'path2'

btn = Btn(root, img1=img, img2=img2)
btn.pack()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将鼠标悬停在按钮上时,按钮颜色不会更改

来自分类Dev

当使用 css 将鼠标悬停在按钮上时,如何更改按钮的文本?

来自分类Dev

WPF如何在鼠标悬停在按钮上时更改背景图像

来自分类Dev

将鼠标悬停在按钮上时显示图像

来自分类Dev

当我将鼠标悬停在按钮上时如何使图像出现(无继承)

来自分类Dev

将鼠标悬停在按钮上时CSS更改跨度的颜色

来自分类Dev

将鼠标悬停在图像上时按钮显示

来自分类Dev

我使用CSS将鼠标悬停在按钮上时,试图使按钮中的文本更改颜色

来自分类Dev

使用StatusBar将鼠标悬停在按钮上

来自分类Dev

使用StatusBar将鼠标悬停在按钮上

来自分类Dev

将鼠标悬停在按钮pyqt5上时如何显示工具提示图像

来自分类Dev

当使用CSS将鼠标悬停在按钮上时,如何更改网站的背景图片?

来自分类Dev

仅当将鼠标悬停在按钮上时,元素才跟随光标

来自分类Dev

将鼠标悬停在按钮上时如何打开Material-UI菜单

来自分类Dev

如何在将鼠标悬停在按钮上时摆脱默认的蓝色?

来自分类Dev

将鼠标悬停在按钮上时,以精确的变换度旋转对象

来自分类Dev

将鼠标悬停在该图像上方的按钮上时,如何对图像应用悬停效果?

来自分类Dev

当鼠标悬停在按钮WPF上时,如何制作一个可以更改图像的图像按钮?

来自分类Dev

将鼠标悬停在图像上时显示图像

来自分类Dev

将鼠标悬停在多个tds上时,如何更改它们的类别?

来自分类Dev

将鼠标悬停在多个tds上时,如何更改它们的类别?

来自分类Dev

当我将鼠标悬停在按钮上时,我希望新图像描述该按钮,但它正在闪烁

来自分类Dev

将鼠标悬停在其父元素上时更改插入符号按钮

来自分类Dev

将鼠标悬停在其父元素上时更改插入符号按钮

来自分类Dev

使用jQuery / Javascript将鼠标悬停在按钮上时,将文本插入textarea并帮助文本

来自分类Dev

将鼠标悬停在图像上时更改div标签内的文本?

来自分类Dev

将鼠标悬停在div上时如何更改div内的图像

来自分类Dev

将鼠标悬停在文本列表上时更改图像

来自分类Dev

将鼠标悬停在按钮上,同时仍具有其背后元素的悬停效果

Related 相关文章

  1. 1

    将鼠标悬停在按钮上时,按钮颜色不会更改

  2. 2

    当使用 css 将鼠标悬停在按钮上时,如何更改按钮的文本?

  3. 3

    WPF如何在鼠标悬停在按钮上时更改背景图像

  4. 4

    将鼠标悬停在按钮上时显示图像

  5. 5

    当我将鼠标悬停在按钮上时如何使图像出现(无继承)

  6. 6

    将鼠标悬停在按钮上时CSS更改跨度的颜色

  7. 7

    将鼠标悬停在图像上时按钮显示

  8. 8

    我使用CSS将鼠标悬停在按钮上时,试图使按钮中的文本更改颜色

  9. 9

    使用StatusBar将鼠标悬停在按钮上

  10. 10

    使用StatusBar将鼠标悬停在按钮上

  11. 11

    将鼠标悬停在按钮pyqt5上时如何显示工具提示图像

  12. 12

    当使用CSS将鼠标悬停在按钮上时,如何更改网站的背景图片?

  13. 13

    仅当将鼠标悬停在按钮上时,元素才跟随光标

  14. 14

    将鼠标悬停在按钮上时如何打开Material-UI菜单

  15. 15

    如何在将鼠标悬停在按钮上时摆脱默认的蓝色?

  16. 16

    将鼠标悬停在按钮上时,以精确的变换度旋转对象

  17. 17

    将鼠标悬停在该图像上方的按钮上时,如何对图像应用悬停效果?

  18. 18

    当鼠标悬停在按钮WPF上时,如何制作一个可以更改图像的图像按钮?

  19. 19

    将鼠标悬停在图像上时显示图像

  20. 20

    将鼠标悬停在多个tds上时,如何更改它们的类别?

  21. 21

    将鼠标悬停在多个tds上时,如何更改它们的类别?

  22. 22

    当我将鼠标悬停在按钮上时,我希望新图像描述该按钮,但它正在闪烁

  23. 23

    将鼠标悬停在其父元素上时更改插入符号按钮

  24. 24

    将鼠标悬停在其父元素上时更改插入符号按钮

  25. 25

    使用jQuery / Javascript将鼠标悬停在按钮上时,将文本插入textarea并帮助文本

  26. 26

    将鼠标悬停在图像上时更改div标签内的文本?

  27. 27

    将鼠标悬停在div上时如何更改div内的图像

  28. 28

    将鼠标悬停在文本列表上时更改图像

  29. 29

    将鼠标悬停在按钮上,同时仍具有其背后元素的悬停效果

热门标签

归档