Java编程,我有一个JTextField和JButton,当我在JTextField输入内容时,我自动搜索,将匹配的字符

放在一个JComboBox里面,如果有匹配的字符,我就让JComboBox显示出来,如图假如我就在这时候点击旁边的Button(上面没有截图),这个JComboBox会消... 放在一个JComboBox里面,如果有匹配的字符,我就让JComboBox显示出来,如图

假如我就在这时候点击旁边的Button(上面没有截图),这个JComboBox会消失,但按钮没有响应,再按一次Button才会响应按钮,我现在想在点击第一次Button时就响应按钮事件,怎么实现?
展开
 我来答
Nomat
2012-12-09 · TA获得超过314个赞
知道小有建树答主
回答量:342
采纳率:0%
帮助的人:322万
展开全部
你这样的想法不是很好实现的,在你输入JComboBox时这里就会成为焦点,键盘和鼠标的事件就会集中在这里。你想点击另外一个按钮就要先失去这个焦点。但是看你的反应父组件并没有接受导致失去焦点的事件。
个人见解:
如果你要实现这样的想法的话,应该要重写。重写焦点监听器,监听组件的焦点失去。重写父组件鼠标监听器,保留最近的一个鼠标事件的索引。一但监听到JComboBox失去了焦点,马上让父组件重新获得这个鼠标事件。
bd9006
2012-12-09 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
用一个变量 bCanClickButton,当JComboBox得到焦点时,设置成bCanClickButton=false;
JButton第1次点击时,bCanClickButton=true;并立即返回,不执行任何。再次点击时,再到相关的操作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wcidfyml
2012-12-09 · TA获得超过180个赞
知道答主
回答量:112
采纳率:0%
帮助的人:61.1万
展开全部
先给这个Button获得焦点,然后第一次点击应该可以的吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式