java keyevent_Java KeyEvent.getKeyLocation方法代码示例

import java.awt.event.KeyEvent; //导入方法依赖的package包/类

protected @Override boolean processKeyBinding(KeyStroke ks,

KeyEvent e,

int condition,

boolean pressed) {

if (Utilities.isMac()) {

int mods = e.getModifiers();

boolean isCtrl = (mods & KeyEvent.CTRL_MASK) != 0;

boolean isAlt = (mods & KeyEvent.ALT_MASK) != 0;

if (isAlt && (e instanceof MarkedKeyEvent)) {

mods = mods & ~ KeyEvent.CTRL_MASK;

mods = mods & ~ KeyEvent.CTRL_DOWN_MASK;

mods |= KeyEvent.ALT_MASK;

mods |= KeyEvent.ALT_DOWN_MASK;

KeyEvent newEvent = new MarkedKeyEvent (

(Component) e.getSource(), e.getID(),

e.getWhen(), mods, e.getKeyCode(), e.getKeyChar(),

e.getKeyLocation());

KeyStroke newStroke = null;

if( null != ks ) {

newStroke = e.getID() == KeyEvent.KEY_TYPED ?

KeyStroke.getKeyStroke (ks.getKeyChar(), mods) :

KeyStroke.getKeyStroke (ks.getKeyCode(), mods,

!ks.isOnKeyRelease());

}

boolean result = super.processKeyBinding (newStroke,

newEvent, condition, pressed);

if (newEvent.isConsumed()) {

e.consume();

}

return result;

} else if (!isAlt) {

return super.processKeyBinding (ks, e, condition, pressed);

} else {

return false;

}

} else {

return super.processKeyBinding (ks, e, condition, pressed);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值