【软件构造】实验三可视化JSwing的小总结

1.[JFrame]:
作用:JFrame是指一个计算机语言-java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。

使用举例:

//创建并设置窗口
JFrame frame = new JFrame("test");
frame.setSize(400, 230);
frame.setVisible(true);

运行结果:

java swing机器学习可视化 swing可视化界面如何使用_java


2.[JPanel]:

作用:这个类似于 HTML 的 div 标签,可以创建多个面板并在 JFrame 中指定位置,面板中我们可以添加文本字段,按钮及其他组件。

使用举例:

JPanel panel = new JPanel();
frame.add(panel);

3.[JButton]:
作用:按钮组件,用来点击并执行操作,可添加在面板panel上。

使用举例:

//创建并加入面板
JButton check = new JButton("testJButton");
check.setBounds(230, 170, 210, 25);
panel.add(check);
//点击执行操作
check.addActionListener(new ActionListener() {			
	         @Override
	         public void actionPerformed(ActionEvent e) {
	        	 	//写入要执行的操作
	        	 	System.out.println("success!");
	         }
 });

运行结果:

java swing机器学习可视化 swing可视化界面如何使用_经验分享_02


点击按钮的输出:

java swing机器学习可视化 swing可视化界面如何使用_可视化_03


4.[JTable]:

作用:JTable是一个表格组件,对JTable进行实例化时有多种方式

使用举例:

JFrame frame1 = new JFrame("ARRIVAL");
//定义第一行vName
Vector<String> vName = new Vector<>();
String[] columnsNames = new String[] {"Time", "Entry Number", "Origin", "", "Terminal", "State"};
for (String name : columnsNames)
	vName.add(name);
//定义传入JTable的参数
Vector<Vector<Object>> data1=new Vector<Vector<Object>>();
//添加从第二行开始要传入表格的对象vRow
Vector<Object> vRow = new Vector<>();
vRow.add("2020-06-07 00:00");
vRow.add("hit");
vRow.add("a");
vRow.add("-->");
vRow.add("b");
vRow.add("WAITING");
data1.add(vRow);
//传入参数并添加及生成表格
JTable table = new JTable(data1, vName);
JScrollPane jScrollPane = new JScrollPane();
jScrollPane.setViewportView(table);
frame1.setSize(800,600);
frame1.setLayout(new BorderLayout());
frame1.add(jScrollPane,BorderLayout.CENTER);
frame1.setVisible(true);

运行结果:

java swing机器学习可视化 swing可视化界面如何使用_经验分享_04

更多的数据:

java swing机器学习可视化 swing可视化界面如何使用_可视化_05

5.[JLabel]:

作用:JLabel组件表示的是一个标签,本身是用于显示信息的。

使用举例:

JFrame frame = new JFrame("test");
frame.setSize(500, 250);
JPanel panel = new JPanel();
frame.add(panel);
panel.setLayout(null);
//新建标签并将其加入面板
JLabel name = new JLabel("username:");
name.setBounds(10, 20, 160, 25);
panel.add(name);
JLabel time = new JLabel("code:");
time.setBounds(10, 50, 80, 25);
panel.add(time);
frame.setVisible(true);

运行结果:

java swing机器学习可视化 swing可视化界面如何使用_System_06


6.[JTextField]:

作用:JTextField是一个轻量级组件,它允许编辑单行文本。可以用来读入用户输入。

使用举例:

JFrame frame = new JFrame("test");
frame.setSize(500, 250);
JPanel panel = new JPanel();
frame.add(panel);
panel.setLayout(null);
JLabel name = new JLabel("username:");
name.setBounds(10, 20, 160, 25);
panel.add(name);
//新建JTextField用于读取username并加入面板
JTextField newText1 = new JTextField(80);
newText1.setBounds(170, 20, 180, 25);
panel.add(newText1);        
JLabel time = new JLabel("code:");
time.setBounds(10, 50, 80, 25);
panel.add(time);
//新建JTextField用于读取code并加入面板
JTextField newText2 = new JTextField(80);
newText2.setBounds(170, 50, 180, 25);
panel.add(newText2);
JButton sure = new JButton("确定");
sure.setBounds(100, 140, 80, 25);
panel.add(sure);
sure.addActionListener(new ActionListener() {			
	         @Override
	         public void actionPerformed(ActionEvent e) {
	         	 //获取username和code
	        	 String a = newText1.getText();
	        	 String b = newText2.getText();
	        	 //打印输出
	        	 System.out.println(a);
	        	 System.out.println(b);	        	 
	         }
	    });
frame.setVisible(true);

运行结果:

java swing机器学习可视化 swing可视化界面如何使用_System_07


控制台输出:

java swing机器学习可视化 swing可视化界面如何使用_java_08


7.[JTextArea]:

作用:实现一个文本域。

使用举例:

//创建新的JTextArea
JTextArea n = new JTextArea();
(planes!=null) {
        	for(int i = 0; i<planes.size(); i++)
            	n.append("{ 编号:"+planes.get(i).getNum()+",型号:"+planes.get(i).getName()+",座位数:"+planes.get(i).getNumofSeat()+",机龄:"+planes.get(i).getYear()+"}"+"\n");
}       
//添加滚动条
JScrollPane scroll = new JScrollPane(n);
scroll.setBounds(10, 210, 350, 200);
scroll.setVerticalScrollBarPolicy( 
        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); 
panel.add(scroll);
}

运行结果:

橙色圈出部分即为JTextArea

java swing机器学习可视化 swing可视化界面如何使用_java_09

/***********************************************************************************/

以上即为软件构造实验三GUI可视化有关JSwing的使用小总结。