java KeyListener的问题

我在框架上有一个面板和几个按钮,我设计用键盘控制面板里图形的移动和变形。。。程序运行的时候键盘可以操作,但是当我点击其中某个按钮之后。。。键盘就无法控制图形的变换了。。。... 我在框架上有一个面板和几个按钮,我设计用键盘控制面板里图形的移动和变形。。。程序运行的时候键盘可以操作,但是当我点击其中某个按钮之后。。。键盘就无法控制图形的变换了。。。
显示图形的面板为gridlayout布局,里面有M * N 个小面板,控制图形即是控制不同小面板的backGround颜色。
展开
 我来答
星夜落尘
2011-04-06 · TA获得超过594个赞
知道小有建树答主
回答量:466
采纳率:0%
帮助的人:350万
展开全部
没有了焦点,焦点跑到按钮上了,你的键盘的操作就是对那个按钮进行的操作了,面板的KeyListener接收不到键盘事件,所以就不会有反应了。

你可以再点击按钮之后再点击窗口,回到面板那里,或者用代码实现SetForce()。
更多追问追答
追问
SetForce用在什么地方?按钮的监听器里吗?具体怎么实现?
假设按钮名为jbtOK,显示图片的面板名为jpMain
追答
在jbtOK的鼠标弹起事件中最后加入:
jpMain.requestFocus();
应笑郎04
2011-04-06 · TA获得超过1976个赞
知道小有建树答主
回答量:1397
采纳率:100%
帮助的人:644万
展开全部
楼主几位说的有些不对,因为监听机制是委托的
即使焦点跑到了按钮上,但是按钮没有监听键盘事件,那么按钮就会委托它的父容器来处理键盘事件,以此类推
楼主 最好把代码贴出来 给大家看看
追问
代码一千几百行,不好发啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幽冥神者
2011-04-06 · TA获得超过3213个赞
知道大有可为答主
回答量:1953
采纳率:50%
帮助的人:1754万
展开全部
原因是你点击某个按钮之后,程序焦点就在你的按钮上而不在你键盘监听的位置上了。修改方法是在点击之后让程序自动把焦点移回你的面板上
追问
具体怎么操作?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式