我有6个Button
个,标有“_0”到“_5”。我希望当用户按下相应的数字键时按下每个按钮。现在,他们必须按Alt +相应的数字键。
我可以通过给每个按钮添加一个加速器来解决这个问题,但这并不完全相同。使用加速键时,只要按下键,就会触发按钮的Clicked
信号。使用助记符时,按下该键时按钮会被按下,并且在释放按钮之前不会触发Clicked
信号。我更喜欢这个,因为它可以帮助用户查看正在发生的事情。
我有什么方法可以获得助记符的行为,但不需要Alt键吗?
答案 0 :(得分:1)
您可以让gtk窗口使用窗口类中的事件掩码设置捕获键事件。我不能比回调和键类型更具体,因为我使用GTKmm(C ++绑定),但方法应该类似。基本上,当您在窗口中捕获所需的键事件时,您可以在代码中按下按钮。然而,窗口必须被选中(聚焦)。