我需要知道用户是否在点击按钮时按住 ctrl 键。因为它是一个按钮,而不是一个数字我不能使用" selectionType'在图上等等。有一个简单的方法吗?
谢谢!
答案 0 :(得分:10)
这个怎么样:
modifiers = get(gcf,'currentModifier'); %(Use an actual figure number if known)
ctrlIsPressed = ismember('control',modifiers);
figure类有许多有用的Current*
属性,在处理回调时非常有用。这是如何检索当前鼠标位置,选定图形对象和(如此处)按下的键。其中包括:CurrentAxes,CurrentCharacter,CurrentKey,CurrentModifier,CurrentObject和CurrentPosition。
答案 1 :(得分:1)
按退出键重新初始化CurrentModifier。到目前为止,我的解决方案是指示我的用户(在GUI中)按下转义键以恢复默认行为。
总的来说,Matlab的CurrentModifier行为似乎是修饰键"坚持"直到出现以下情况之一:按下不同的修改器,选择不同的窗口,或按下转义键。