JSpinner的addChangeListener问题。

无声崩溃 2008-08-02 10:52:20
JSpinner jSpinner1=new JSpinner();
jSpinner1.addChangeListener( new ChangeListener() {
Basketball ntb=new Basketball();
public void stateChanged(ChangeEvent e) {
NBasketball nbt;
nbt=new NBasketball(this);//这一行new那里报错
}
});

我的目的是使那个jSpinner1的值被改变(就是按那个上或下的按扭后)后,就把当前frame
的参数传递给nbt(nbt里带这个参数的构造方法我已经写好,无误)
我的问题就是为什么那个new要报错,难道在监听器里不能写这个方法?
我测试了下。我不加那个this就正确。请高手解答。急。。。
...全文
168 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
bsr1983 2008-08-05
  • 打赏
  • 举报
回复
nbt=new NBasketball(this);//这一行报错是因为你使用内部类为JSpinner添加的的ChangeListener,这里的this是指ChangeListener的对象啊,按照你的意思这里应该是当前frame对象吧,你可以在frame的构造函数中声明一个当前frame类的对象mFrame,在super()后添加一句mFrame=this;然后将nbt=new NBasketball(this);改为nbt=new NBasketball(mFrame);即可

62,614

社区成员

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

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