欢迎光临散文网 会员登陆 & 注册

Java swing超详细解析:点击不同的按钮切换对应的面板界面,Jpanel【诗书画唱】

2020-05-28 13:11 作者:诗书画唱  | 我要投稿


package swing;


public class mains {


public static void main(String[] args) {


new swingJpanel();

}


}


package swing;

import java.awt.Color;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;


import javax.swing.*;

public class swingJpanel extends JFrame{

public static JPanel jpRed,jpPink,jpBlueRightBottom1,jpGreenRightBottom2;

public static JButton btn1,btn2;

public swingJpanel(){

//swing中必要的代码内容:布局方式、大小、位置、释放资源、显示

this.setLayout(null);

this.setSize(700,700);

// 下面的代码的意思就是把位置设置为居中

this.setLocationRelativeTo(null);

jpRed=new JPanel();

jpPink=new JPanel();

jpBlueRightBottom1=new JPanel();

jpGreenRightBottom2=new JPanel();


jpRed.setLayout(null);//将jp1的布局方式也设置为空布局

btn1=new JButton("点赞界面");

btn2=new JButton("三连关注界面");

btn1.setBounds(100,30,120,90);

btn2.setBounds(250,30,120,90);

btn1.addActionListener(new swingJpanel_shijian(this));

btn2.addActionListener(new swingJpanel_shijian(this));

jpRed.add(btn1);jpRed.add(btn2);

jpRed.setBorder(BorderFactory.createLineBorder(Color.red));

jpPink.setBorder(BorderFactory.createLineBorder(Color.pink));

jpBlueRightBottom1.setBorder(BorderFactory.createLineBorder(Color.blue));

jpGreenRightBottom2.setBorder(BorderFactory.createLineBorder(Color.green));

jpRed.setBounds(10,10,600,150);

jpPink.setBounds(10,170,200,450);

jpBlueRightBottom1.setBounds(220, 170, 380, 450);

jpGreenRightBottom2.setBounds(220, 170, 380, 450);

//jp3.setBounds(220, 170, 380, 450);

this.add(jpRed);this.add(jpPink);

this.add(jpGreenRightBottom2);

this.add(jpBlueRightBottom1);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

}

//使用第二种方式(就是传窗口)得到页面的控件

class swingJpanel_shijian implements ActionListener{

public static swingJpanel ss;//现在的ss就是拥有控件的窗体了

public swingJpanel_shijian(swingJpanel s){

ss=s;

}

@Override

public void actionPerformed(ActionEvent arg0) {

// TODO Auto-generated method stub

//判断用户点击的是那个按钮

String neirong=arg0.getActionCommand();//接收点击按钮的内容

if(neirong.equals("点赞界面")){

//JOptionPane.showMessageDialog(null,"点击了第一个按钮");

ss.jpBlueRightBottom1.setVisible(true);

ss.jpGreenRightBottom2.setVisible(false);

}else if(neirong.equals("三连关注界面")){

// JOptionPane.showMessageDialog(null,"点击了第二个按钮");

ss.jpBlueRightBottom1.setVisible(false);

ss.jpGreenRightBottom2.setVisible(true);

}

}


}


Java swing超详细解析:点击不同的按钮切换对应的面板界面,Jpanel【诗书画唱】的评论 (共 条)

分享到微博请遵守国家法律