超萌新级的Java学习心得——界面
程序员文章站
2022-05-12 13:54:31
...
我们之前写的程序大多数是都是控制台程序,即下面这种:
但是,我们使用的大多数程序都是有界面的,即有可视化的界面。因此,学习可视化界面的编写是成为一位合格的程序员的必经之路。
首先,介绍Swing,是一个为Java设计的GUI工具包,也是基础类的一部分,包括了一堆图形用户界面器件。但是,这个的缺点是比较明显的,即与现代图形界面框架不同,它的界面和代码没有做到分离,代码中会出现许多坐标,十分靠脑力。本文只会提及Swing有关知识,希望使用JavaFX可以随意看看。
Swing有一大堆的组件,大多数可以透过名字明白作用, 这里只讲一些简单的。
Jframe:是带有最大化最小化,关闭的窗口,一般所有组件应直接或者间接地放在其上面,是所有可视化界面程序的基础。
Jpanel:为面板容器,可以在上面放置一些组件,可以利用此控制好组件的位置等。
JLabel:是标签组件,可以在上面添加文字,图片等。
JTextField:是一个可以编辑文本框。
JButton:是按钮。
Layout:布局管理器,有许多种
接下来就可以利用这些来写一个简单的登录界面。
代码如下:
public class QQ_login {
public static void main(String[] args) {
QQ_login l = new QQ_login();
l.Show();
}
public void Show() {
javax.swing.JFrame jfr = new javax.swing.JFrame();
jfr.setSize(450, 250);//设置界面大小
jfr.setTitle("登录界面");
jfr.setLocationRelativeTo(null);
jfr.setResizable(false);
java.awt.FlowLayout fl = new java.awt.FlowLayout();//流式布局。
jfr.setLayout(fl);//设置流式布局,现在是从上到下按添加的顺序依次摆放。
java.awt.Dimension dm =new java.awt.Dimension(210, 35);//用于设置组件的宽和高的属性值
javax.swing.JTextField jt = new javax.swing.JTextField();
jt.setText("请输入用户名……");
jt.setPreferredSize(dm);//设置宽高。
jfr.add(jt);//将文本域添加到窗体中。
java.awt.Dimension dm1=new java.awt.Dimension(75, 35);//设置标签尺寸
javax.swing.JLabel jle1 = new javax.swing.JLabel("注册账号");//创建标签
jle1.setPreferredSize(dm1);
jfr.add(jle1);
javax.swing.JTextField jt1 = new javax.swing.JTextField();
jt1.setText("请输入密码……");
jt1.setPreferredSize(dm);
jfr.add(jt1);
javax.swing.JLabel jle2 = new javax.swing.JLabel("忘记密码");
jle2.setPreferredSize(dm1);
jfr.add(jle2);
java.awt.Dimension dm3= new java.awt.Dimension(300, 90);
javax.swing.JPanel jp = new javax.swing.JPanel();//创建一个JPanel用于装各个组件
jp.setPreferredSize(dm3);
jp.add(jt);
jp.add(jle1);
jp.add(jt1);
jp.add(jle2);
jfr.add(jp);//将各个组件添加到JPanel内。
javax.swing.JButton jbt = new javax.swing.JButton("登陆");
java.awt.Dimension dm2 = new java.awt.Dimension(300, 30);//创建按钮
jbt.setPreferredSize(dm2);
jfr.add(jbt);
Buttom_Action bt = new Buttom_Action(jt, jt1);
jbt.addActionListener(bt);
jfr.setDefaultCloseOperation(3);//设置退出后直接结束进程,不然还会在后台运行。
jfr.setVisible(true);//令界面可视化,一般写在最后。
}
}
效果:
但是这仅仅只是一个界面,点击任何都是不会有什么作用的。如果要使其有作用,则需要加入监听器接口等,本篇不会提及。
此外,还有很多组件可以使用,因此,需要多多探索,才可以熟练使用。
上一篇: 精研3道简单的网易2018校招编程题