通过点击按钮-更换JPanel的背景图片

首先准备两张图片:

D:\pachong\1.jpg

D:\pachong\2.jpg

 

下面是源码:

Test.java

 

public class Test {
    public static void main(String[] args)
    {
        JFrame frame = new JFrame();
        frame.setLayout(new BorderLayout());

        MyJPanel myJPanel = new MyJPanel();

        JPanel jPanel = new JPanel();
        JButton jButton = new JButton("上");
        JButton jButton1 = new JButton("下");
        jPanel.add(jButton);
        jPanel.add(jButton1);

        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                MyJPanel.deleteI();
                myJPanel.repaint();
            }
        });

        jButton1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                MyJPanel.addI();
                myJPanel.repaint();
            }
        });



        frame.add(myJPanel,BorderLayout.CENTER);
        frame.add(jPanel,BorderLayout.SOUTH);

        frame.setSize(Util.WIDTH,Util.HEIGTH);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}


MyJpanel.java

 

 

public class MyJPanel extends JPanel {
    public static  int i = 1;

    public static void addI()
    {
        i++;
    }

    public static void deleteI()
    {
        i--;
    }

    public void paint(Graphics g)
    {
        int x =0;
        int y = 0;
        String swl = "D:\\pachong\\" + i + ".jpg";
        System.out.println(swl);
        ImageIcon imageIcon  = new ImageIcon(swl);
        g.drawImage(imageIcon.getImage(),x,y,getSize().width,getSize().height,this);
    }
//    public void paintComponent(Graphics g)
//    {
//        super.paintComponent(g);
//        int x = 0;
//        int y = 0;
//        String swl = "D:\\pachong\\" + 1 + ".jpg";
//        System.out.println(swl);
//        ImageIcon imageIcon  = new ImageIcon(swl);
//        g.drawImage(imageIcon.getImage(),x,y,getSize().width,getSize().height,this);
//        i++;
//    }
}

 

 

 

 

 

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值