📜  PYGLET – 鼠标滚动事件

📅  最后修改于: 2022-05-13 01:55:05.040000             🧑  作者: Mango

PYGLET – 鼠标滚动事件

在本文中,我们将看到如何在Python的 PYGLET 模块中触发鼠标滚动事件。 Pyglet 是易于使用但功能强大的库,用于开发视觉丰富的 GUI 应用程序,如游戏、多媒体等。窗口是占用操作系统资源的“重量级”对象。 Windows 可能显示为浮动区域,也可以设置为填充整个屏幕(全屏)。滚动鼠标滚轮时调用此事件。请注意,大多数鼠标只有一个垂直滚轮,因此 scroll_x 通常为 0。Apple Mighty Mouse 是一个例外,它有一个鼠标球代替滚轮,允许 scroll_x 和 scroll_y 移动。

我们可以在下面给出的命令的帮助下创建一个窗口:

pyglet.window.Window(width, height, title)

下面是鼠标滚动事件的语法,当这个事件被触发时这个方法被调用:

@window.event       
def on_mouse_scroll(x, y, scroll_x, scroll_y):
    print("Mouse scrolled")

下面是实现:

Python3
# importing pyglet module
import pyglet
import pyglet.window.key
 
# width of window
width = 500
 
# height of window
height = 500
 
# caption i.e title of the window
title = "Geeksforgeeks"
 
# creating a window
window = pyglet.window.Window(width, height, title)
 
# text
text = "GeeksforGeeks"
 
# creating a label with font = times roman
# font size = 36
# aligning it to the centre
label = pyglet.text.Label(text,
                          font_name ='Times New Roman',
                          font_size = 36,
                          x = window.width//2, y = window.height//2,
                          anchor_x ='center', anchor_y ='center')
 
new_label = pyglet.text.Label(text,
                          font_name ='Times New Roman',
                          font_size = 10,
                          x = 25, y = 25)
 
# on draw event
@window.event
def on_draw():   
 
     
    # clearing the window
    window.clear()
     
    # drawing the label on the window
    label.draw()
 
     
# key press event   
@window.event
def on_key_press(symbol, modifier):
 
    # key "C" get press
    if symbol == pyglet.window.key.C:
         
        print("Key C is pressed")
 
 
# on mouse scroll event
@window.event
def on_mouse_scroll(x, y, scroll_x, scroll_y):
     
    # printing some message
    print("Mouse scrolled")
     
 
  
 
# image for icon
img = image = pyglet.resource.image("logo.png")
 
# setting image as icon
window.set_icon(img)
 
                
# start running the application
pyglet.app.run()


输出 :

Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled
Mouse scrolled