-
有关登录界面:
-
OOP的核心即:定义类,创建对象,调用方法。你使用的IDEA编写程序的程序员早想到你可能会使用的工具---即系统自带的源代码,需要你调用并修改。
- 大体上你需要JFrame,JTextField,JButton三个类,系统已提供,引用即可。
-
-
调用Java源代码:
- LoginUI:
-
import window.LoginAction;//引入窗口的背后逻辑代码 import java.awt.*;//提供图形功能 import javax.swing.*;//用于创建窗口类 import java.util.concurrent.Flow;//创建流式布局
-
-
LoginAction:
-
package window; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent;
-
- LoginUI:
-
编写方法和主函数:
- 这里以我编写的志愿登录界面为示例:
-
public class LoginUI { public void showUI() { JFrame jf = new JFrame(); jf.setTitle("陕西志愿登录界面 版本:v9.0 ——阳光高考网"); jf.setSize(600, 800); jf.setLocation(300,100); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); FlowLayout flowLayout = new FlowLayout(); jf.setLayout(flowLayout); JLabel la9 =new JLabel("姓名"); JButton bt1=new JButton("登录"); JLabel la1 = new JLabel("本科(一批)(二批):"); JLabel la2 = new JLabel("A志愿:"); JLabel la3 = new JLabel("专业1"); JLabel la4 = new JLabel("专业2"); JLabel la5 = new JLabel("专业3"); JLabel la6 = new JLabel("专业4"); JLabel la7 = new JLabel("专业5"); JLabel la8 = new JLabel("专业6"); JButton bt = new JButton("确认"); JTextField nameIn1 = new JTextField(60); JTextField nameIn2= new JTextField(20); JTextField nameIn3 = new JTextField(60); JTextField nameIn4= new JTextField(60); JTextField nameIn5 = new JTextField(60); JTextField nameIn6= new JTextField(60); JTextField nameIn7 = new JTextField(60); JTextField nameIn8= new JTextField(60); JTextField nameIn9=new JTextField(20);
1,调用“showUI”方法,2,令“jf”属于JFrame类,以jf为对象调用系统中有关界面属性的方法像Tittle,Size,Location(标题,大小,位置)等。3,记得创建流式布局器以防止输入框或按钮沾满全屏,同时运用此方法。4,下面创建你所需要的不同标签与不同输入框(new)即可。
-
主函数:即调用“showUI”方法即可
-
public static void main(String[] args) LoginUI loginUI = new LoginUI(); loginUI.showUI();
-
创建监听器,指向特定输入框:
- LoginAction:
-
package window; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class LoginAction implements ActionListener{//校验用户输入的监听器类 private JTextField nameIn9;//只能被本身修改和访问(类加对象变量),缺少则无法识别“nameIn9”,这里指向“nameIn9”输入框 public LoginAction(JTextField nameIn9){ this.nameIn9=nameIn9;//this.nameIn9指当前对象具有的变量“nameIn9”,右侧nameIn9指参数传递过来的数值。 }//创建时,输入界面类中的输入框
-
将点击动作转化为文案的获取并借此分别执行对应的指令
public void actionPerformed(ActionEvent e) {//接口监听器里定义的抽象方法,所有实现这个接口的类都要调用这个方法
String btText=e.getActionCommand();//通过e.getActionCommand来获得所触发按钮的内容
System.out.println("已点击的是:"+btText+"按钮");
String name=nameIn9.getText();
System.out.println("输入的是:"+name);
if (name.equals("邢浩哲")){
if (btText.equals("登录")) {
JFrame frame = new JFrame("登录成功!");
frame.setSize(400, 500);
frame.setLocationRelativeTo(null);
frame.setVisible(true);}
}
if (btText.equals("确认")){
JFrame frame = new JFrame("填报成功!");
frame.setSize(400, 500);
frame.setLocationRelativeTo(null);
frame.setVisible(true);//指需要显示窗口
}
}
并分别添加“确认”和“登录” 的属性,
-
添加图片到界面上:
- 截取一个图片并放到桌面上
- 右键左下角win键点击“运行”,将图片的图标拖动到运行框,复制代码,将其定义为路径“path”。形如:
-
String path = "d:\\桌面\\3f011138073ae2d06deed4591e28f0a.png"; ImageIcon icon = new ImageIcon(path); JLabel iconJla = new JLabel(icon);
ImageIcon类的应用即是在swing中显示图片,创建icon对象,并带入参数"path"。之后将图像“icon”带入标签类的参数中,已达到将图片放入标签的目的。
-
调用字符串“equals(String s)”以进行输入框内容正误的比较:
-
String name=nameIn9.getText(); System.out.println("输入的是:"+name); if (name.equals("费可")){ if (btText.equals("登录")) { JFrame frame = new JFrame("登录成功!"); frame.setSize(400, 500); frame.setLocationRelativeTo(null); frame.setVisible(true);} }
即运用:String ABC=输入框.getText(); 来获取输入框中字符,通过ABC
-
-
总代码结果呈现:
内容比较基础,有不足之处还请大佬们补充改正,小哲拜别~~~