入门问题:JButton 对象不能addFocusListener,应该怎么处理

NothingRemained 2003-03-23 10:38:18
编译错误:

TextAndButton.java:59: addFocusListener(java.awt.event.FocusListener) in java.aw
t.Component cannot be applied to (javax.swing.JButton)
b1.addFocusListener(b1);

应该怎么办,thx
...全文
224 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
NothingRemained 2003-03-25
  • 打赏
  • 举报
回复
我在sun的jdk doc 里面看到的

Interface FocusListener

All Superinterfaces:
EventListener

All Known Implementing Classes: //实现类
AWTEventMulticaster, BasicButtonListener, BasicComboBoxEditor, BasicComboBoxUI.FocusHandler, BasicListUI.FocusHandler, BasicSliderUI.FocusHandler, BasicTableUI.FocusHandler, BasicToolBarUI.ToolBarFocusListener, BasicTreeUI.FocusHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler, DefaultCaret, FocusAdapter, JComponent.AccessibleJComponent.AccessibleFocusHandler

FocusAdapter实现了Interface FocusListener ,不过里面是空函数,我们用的时候只要改写需要的就行,如果直接实现Interface FocusListener的话,就要所有的函数都要实现;好像我的说法没什么错吧

当然,我开始看java一共才3星期,理解上有什么错误也是很可能,很正常的,呵呵



希偌 2003-03-24
  • 打赏
  • 举报
回复
乱来,什么叫实现类,一个是事件剪裁器,一个是事件侦听器,怎么个实现法,你到底弄清楚没有
NothingRemained 2003-03-24
  • 打赏
  • 举报
回复
原来是因为我把b1当成了bl,真是的,太粗心了!

class bl = new BL();

b1.addFocusListener(b1);

就这样。。。

to beyond_xiruo:我认为FocusAdapter是FocusListener的实现类,所以,你的说法是不是有点那个,呵呵

多谢两位的回答,在看你们回复的过程中,终于找到了问题之所在
nirvana_hg 2003-03-23
  • 打赏
  • 举报
回复
嘿嘿,不好意思,我没弄清楚。
希偌 2003-03-23
  • 打赏
  • 举报
回复
一楼的先弄清楚再说呀,JButton肯定有addFocusListener方法
希偌 2003-03-23
  • 打赏
  • 举报
回复
JButton jb=new JButton("button");
jb.addFocusListener(new FocusAdapter() {
public void focusLost(FocusEvent e) {}
public void focusGained(FocusEvent e) {}
}););
你的错误是addFocusListener(FocusListener);,正确的应该是addFocusListener(FocusAdapter);
nirvana_hg 2003-03-23
  • 打赏
  • 举报
回复
JButton类没有addFocusListener这个方法。因此就别用了。

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧