package Main;
import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.control.Tooltip;
import javafx.scene.text.Font;
import javafx.stage.Stage;
import java.awt.*;
public class Main extends Application
{
public static void main(String[] args)
{
launch(args);
}
public void start(Stage primaryStage) throws Exception
{
Group group = new Group();
Scene scene = new Scene(group);
primaryStage.setScene(scene);
primaryStage.setTitle("javafx 文本框 密码框");
primaryStage.setHeight(400);
primaryStage.setWidth(650);
TextField text = new TextField();
text.setPromptText("请填写邮箱");//光标关闭才会显示
text.setFocusTraversable(false);//光标关闭
//给文本框输入添加规则
String yx="[A-z0-9_-]*\\\\\\\\@[A-z0-9]+\\\\\\\\.[A-z]+";
text.textProperty().addListener(new ChangeListener<String>() {
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue)
{
if(newValue.matches(yx)==true)
{
System.out.println("是邮箱");
}
else
{
System.out.println("不是");
}
}
});
text.setLayoutX(100);
text.setLayoutY(200);
text.setFont(Font.font(14));
Tooltip tip= new Tooltip("请填写邮箱");
text.setTooltip(tip);//提示
PasswordField ptext = new PasswordField();
ptext.setPromptText("请输入密码");
ptext.setLayoutX(300);
ptext.setLayoutY(200);
ptext.setFont(Font.font(14));
ptext.setFocusTraversable(false);
Label lbzh = new Label("账户:");
lbzh.setLayoutX(55);
lbzh.setLayoutY(205);
lbzh.setFont(Font.font(14));
group.getChildren().addAll(text,ptext,lbzh);
primaryStage.setResizable(false);//设置窗口大小不可改变
primaryStage.show();
}
}
运行结果