瑞芯微Rockchip开发者社区
直播中

王焕锁

7年用户 960经验值
私信 关注
[问答]

请问软按键怎么判断是抬起还是按下?

受到警告
提示: 作者被禁止或删除 内容自动屏蔽

回帖(1)

李泳瑜

2022-1-6 10:29:56

  • 在keypad的源码中,如下语句实现判断按键的状态
         for (unsigned i = 0; i < sizeof(buffer) / sizeof(buffer[0]); i++)
          {
                 bool oldState = m_oldButtonsState;
                 bool isOn = (buffer & 0x01);

                if (oldState != isOn)
                {
                   m_oldButtonsState = isOn;
                   update();  //this function will call paintEvent
                }
          }
    然后根据m_oldButtonsState来切换qt按钮的颜色,您可以看看这里,然后修改成自己需要的功能
    或者修改一下按键驱动drivers/input/keyboard/gpio_keys.c,根据不同的状态返回不同的type,然后按照不同类型切换不同的状态
    这个需要您调试一下,我们没有现成的方法

举报

更多回帖

发帖
×
20
完善资料,
赚取积分