登录界面效果:
编写“用户名、密码、IP、端口”输入框和“重新输入、登录”按钮:
Text name = new Text("用户名:");
Text password = new Text("密码:");
Text ip = new Text("IP: ");
Text port = new Text("port: ");
TextField e_name = new TextField();
e_name.setPrefWidth(150);
TextField e_ip = new TextField();
e_ip.setText("10.36.16.113");
e_ip.setPrefWidth(150);
TextField e_port = new TextField();
e_port.setText("8181");
e_port.setPrefWidth(150);
PasswordField e_password = new PasswordField();
e_password.setPromptText("请输入密码:");
Button clear = new Button("重新输入");
Button login = new Button("登录");
设置网格布局,添加控件,设置控件间距:
//网格布局
GridPane gridPane = new GridPane();
//设置网格位置
gridPane.add(name, 0, 0);
gridPane.add(e_name, 1,0);
gridPane.add(password, 0, 1);
gridPane.add(e_password, 1, 1);
gridPane.add(ip, 0, 2);
gridPane.add(e_ip, 1, 2);
gridPane.add(port, 0, 3);
gridPane.add(e_port, 1, 3);
ridPane.add(clear, 0,4);
ridPane.add(login, 1,4);
//设置单独组件的上下左右的间距
GridPane.setMargin(login, new Insets(0,0,0,115));
gridPane.setAlignment(Pos.CENTER);
//设置垂直间距
gridPane.setVgap(10);
//设置水平间距
gridPane.setHgap(5);
将网格布局添加到场景scene,将scene添加到软件界面,并设置界面标题、大小、背景等:
Scene scene = new Scene(gridPane);
stage.setScene(scene);
stage.setTitle("RFID发卡客户端");
stage.setHeight(800);
stage.setWidth(800);
//添加登录界面背景(引入CSS文件)
scene.getStylesheets().add(Login.class.getResource("Login.css").toExternalForm());
stage.show();
添加“重新输入”按钮监听事件(点击后清楚用户名和密码框):
//绑定监听事件 clear清除
clear.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
//单击清除用户名和密码
e_name.setText(""