• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

请问这个按键程序是如何进行回调的

b93b78908506d5c1 2018-07-18 浏览量:860
QQ图片20180718205735.png

【MultiButton】并发状态事件驱动按键驱动模块

#define EVENT_CB(ev)   if(handle->cb[ev])handle->cb[ev]((Button*)handle)


源码在这里 有点不能理解他最后怎么经过这个东西进行回调 请大神解惑

这是模块下载地址: 
https://github.com/0x1abin/MultiButton

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 结构体内部针对不同的事件对应不同的处理函数,结构体中由函数指针指向对应的函数,并且是以数组的方式保存的,这样就方便根据不同的事件由数组索引去调用对应的函数。大意是这样的,发生相应的事件,就去调用相应的函数。比如,单击,双击~~~都有不同的函数去处理。
    • 发布于 2018-07-18
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:5
  • 这个event CB就是回调的函数,后面的double click和single click对应的不同参数
    • 发布于2018-07-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 这应该是指针传递 以变量数组的形式进行保存
    • 发布于2018-07-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个是按键轮询的代码,handle->repeat是检测按键输入的结构体对象,EVENT_CB()函数就是按键的回调函数。

    • 发布于2018-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个是通过指针的方式进行操作控制的,主要是 用指针对结构体进行重入
    • 发布于2018-08-11
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

请问这个按键程序是如何进行回调的