您好,匿名用户
随意问技术百科期待您的加入

我在Mac OS下用java里getExtendedKeyCode()的问题

0 投票

我在Mac OS下,用java写的,我对JTextField注册了KeyAdapter,然后重写了keyTyped和keyPressed,其中keyPressed我希望实现,如果用户按下上下左右它就能把焦点往相应方向的控件上移动的功能,其中keyPressed里的代码如下:

public void keyPressed(KeyEvent e){
	int index = m_dataVector.indexOf((JTextField)e.getSource());

	//System.out.println(e.getExtendedKeyCode());

	switch(e.getExtendedKeyCode()){
	case KeyEvent.VK_UP:
		if (index > 8 ) m_dataVector.get(index-9).grabFocus(); 
		break;
	case KeyEvent.VK_DOWN:
		if (index < 72) m_dataVector.get(index+9).grabFocus(); 
		break;
	case KeyEvent.VK_LEFT:
		if (index > 0 ) m_dataVector.get(index-1).grabFocus(); 
		break;
	case KeyEvent.VK_RIGHT:
		if (index < 80) m_dataVector.get(index+1).grabFocus(); 
		break;
	//default: System.out.println("nothing"); break;
	}
};

其中注释的位置是我用来查看返回的键代码,如果不注释它,打开程序后,按下任何一个键,出来的数字都是0,求解,我在ubuntu下编译运行一切正常,在mac下就不行呢?

用户头像 提问 2014年 1月21日 @ Tristana 上等兵 (285 威望)
分享到:

你的回答

隐私保护: 您的邮箱仅用于发送系统通知。
请输入验证码:
    图片验证码看不清?
登录注册后不会被要求输入验证码。

提一个问题:

相关问题

+4 投票
1 回复 39 阅读
用户头像 提问 2012年 12月28日 @ Lucia 上等兵 (416 威望)
0 投票
1 回复 45 阅读
0 投票
1 回复 4 阅读
0 投票
1 回复 36 阅读
用户头像 提问 2012年 12月1日 @ Ryze 上等兵 (293 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...