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)