7 - 鼠标键盘侦测

|- 7.1-鼠标坐标 on_mouse_move

语法:GUI对象.on_mouse_move(回调函数名)

  • 返回值:

  • 输入参数: 回调函数名

  • 用法举例:

from unihiker import GUI   #导入包
gui=GUI()  #实例化GUI类
info_text = gui.draw_text(x=120, y=320, text='鼠标坐标',origin='bottom')

def mouse_move(x, y):
    info_text.config(text="坐标:x={},y={}".format(x, y))
    print(x,y)
gui.on_mouse_move(mouse_move)

import time
while True:
    #增加等待,防止程序退出和卡住
    time.sleep(1)

|- 7.2-键盘事件 on_key_click

注意:行空板上有三个按键:Home、A、B,其中Home按键仅供Home菜单使用,A、B按键可供用户调用(注:由于A、B按键同时被映射为了键盘的AB按键,因此除了使用pinpong或unihiker库调用,还使用pygame、opencv等能任何能获取键盘AB键按下的库调用,并不需要一定使用unihiker库调用)。

按键A语法:GUI对象.on_a_click(回调函数名)

  • 返回值:

  • 输入参数: 回调函数名

  • 用法举例: b

按键B语法:GUI对象.on_b_click(回调函数名)

  • 返回值:

  • 输入参数: 回调函数名

  • 用法举例:

任意按键语法:GUI对象.on_key_click(按键名称,回调函数名)

  • 返回值:

  • 输入参数: 按键名称 , 回调函数名

  • 用法举例:

等待按键A/B按下:GUI对象.wait_a_click() GUI对象.wait_b_click()

  • 返回值:

  • 输入参数: 按键名称 , 回调函数名

  • 用法举例:

from unihiker import GUI   #导入包
gui=GUI()  #实例化GUI类

bt="null"
#按键被按下时自动被调用的函数
#注意不要在回调函数中执行时间过长的操作
def on_a_click():
    global bt
    bt="a"
    print(bt)

def on_b_click():
    global bt
    bt="b"
    print(bt)

def on_space_click():
    global bt
    bt="space"
    print(bt)

gui.on_a_click(on_a_click)#注册按键按下的回调函数
gui.on_b_click(on_b_click)

gui.on_key_click('c', lambda: print("C键按下"))
gui.on_key_click('<space>', on_space_click)


import time
while True:
    if bt=="a":
        print("A按键按下")
        bt="null"
    elif bt=="b":
        print("B按键按下")
        bt="null"
    elif bt=="space":
        print("空格键按下")
        bt="null"
#增加等待,防止程序退出和卡住
    time.sleep(1)