Bootstrap

Java图形界面

(程序仅供参考。运行环境:eclipse,jdk8)

一、编写一个GUI程序,窗口标题为“登录”的,能实现用户名和密码的输入。
(1)单击“登录”按钮后验证输入的用户名和密码是否正确,并在控制台输出相关信息:“用户名和密码正确,登录成功”、“用户名或密码错误,登录失败”;
(2)假定已有用户信息如表5所示。用户名不区分大小写。
表5 用户数据

用户名 密码 用户名 密码
tim 123 Mary 121
bill 321 carl 110
import javafx.application.Application;
import javafx.geometry.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

public class Main extends Application {
	Label lab1 = new Label("账号");
	Label lab2 = new Label("密码");
	TextField name = new TextField();
	PasswordField password = new PasswordField();
	Button bt = new Button("登录");
	Button clear = new Button("重置");

	@Override
	public void start(Stage primaryStage) throws Exception {
		/* 网格布局 */
		GridPane gr = new GridPane();
		gr.add(lab1, 0, 0);
		gr.add(name, 1, 0);
		gr.add(lab2, 0, 1);
		gr.add(password, 1, 1);
		gr.add(clear, 0, 2);
		gr.add(bt, 1, 2);
		gr.setAlignment(Pos.CENTER);// 全部居中
		gr.setHgap(5);// 水平间距
		gr.setVgap(15);// 垂直间距
		GridPane.setMargin(bt, new Insets(0, 0, 0, 120));// 设置登录左边外边距
		Scene s = new Scene(gr);
		primaryStage.setScene(s);
		primaryStage.setTitle("登录");// 设置窗口标题
		primaryStage.setWidth(500);
		primaryStage.setHeight(300);
		primaryStage.setResizable(false);// 设置窗口大小固定
		primaryStage.show();
		clear.setOnAction(e -> {// 重置按钮点击事件
			name.setText("");
			password.setText("");
		});
		bt.setOnAction(e -> {// 登录按钮点击事件
			String n = name.getText();
			String lower = n.toLowerCase();// 将输入的用户名全部转换为小写
			String p = password.getText();
			name.setText(n);
			password.setText(p);
			/* 与已存在的用户信息(用户名全部存为小写字母)进行比较,完全符合则登录成功(这里用的是if-else语句进行比较) */
			if ((lower.equals("tim") && p.equals("123")))
				System.out.println("用户名和密码正确,登录成功");
			else if ((lower.equals("bill") && p.equals("321"
;