| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 463 人关注过本帖
标题:关于内部类的问题
只看楼主 加入收藏
shiyide
Rank: 2
等 级:新手上路
威 望:4
帖 子:297
专家分:0
注 册:2006-2-22
收藏
 问题点数:0 回复次数:1 
关于内部类的问题

我写了一个小程序 但是有个问题搞不懂 请指教 我在上面做了标记
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class LeiBuLeiDemo
{
public static void main(String args[])
{
ButtonFrame frame = new ButtonFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
class ButtonFrame extends JFrame
{
private static final int WIDTH = 400;
private static final int HEIGHT = 300;


public ButtonFrame()
{
JButton btn1 = new JButton("按钮1");
final JButton btn2 = new JButton("按钮2"); /////为什么btn2这个按钮一定要声明为final
Container con = getContentPane();

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();
setLocation((screenSize.width - WIDTH)/2,(screenSize.height - HEIGHT)/2);
setSize(WIDTH,HEIGHT);
Image image = Toolkit.getDefaultToolkit().getImage("G:/JAVA/Book/bookmark.gif");
setIconImage(image);
setTitle("四个不同外观的按钮");
btn1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if(btn2.getBackground() == Color.pink)
btn2.setBackground(Color.red);
else
btn2.setBackground(Color.pink);
}
}
);

con.setLayout(new FlowLayout());
con.add(btn1);
con.add(btn2);
}

}

搜索更多相关主题的帖子: 部类 
2006-06-04 17:24
飘飘叶子
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:597
专家分:10
注 册:2005-8-17
收藏
得分:0 

因为你在new ActionListener()里面调用了局部变量btn2,把btn2声明为类变量就可以了……


向着软件工程师的目标前进!
2006-06-04 19:00
快速回复:关于内部类的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016479 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved