马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
class MyLayout extends JFrame{
private JPanel jp;
private JLabel jl1;
private JButton jb;
public static void main(String args[]){
MyLayout jf = new MyLayout();
jf.setVisible(true);
jf.setResizable(false);
}
MyLayout(){
setBounds(100,100,450,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jp = new JPanel();
jl1 = new JLabel();
jb = new JButton("button");
jb.addActionListener(new MyListener());
jp.setLayout(new BorderLayout());
jp.add(jl1,BorderLayout.CENTER);
jp.add(jb,BorderLayout.SOUTH);
setContentPane(jp);
}
private class MyListener implements ActionListener{
public void actionPerformed(ActionEvent e){
jl1.setIcon(new ImageIcon("./logo.png"));
}
}
}
效果图:
这里用的是边框布局,按钮的点击事件采用内部类的方式,这种方式比较灵活,可以为多个按钮使用一个内部类,通过参数来确定是哪个按钮的点击事件。这个内部类通过实现ActionListener这个接口,接口就跟类一样,就是必须要重写里面的方法才能用,内部类里可以使用外部类的变量所以非常方便,以后经常会使用这种方式。 |