首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何只接受小写字母和数字,并将它们放在单独的TextFields中?

要实现只接受小写字母和数字,并将它们放在单独的TextFields中,可以按照以下步骤进行:

  1. 创建一个文本输入框(TextField)用于接收用户输入。
  2. 添加一个文本变化监听器(TextWatcher)来监听用户输入的变化。
  3. 在文本变化监听器中,获取用户输入的文本,并进行过滤。
  4. 使用正则表达式来检查用户输入的字符是否为小写字母或数字。
  5. 如果用户输入的字符符合要求,则将其添加到相应的TextField中。
  6. 如果用户输入的字符不符合要求,则忽略该字符或给出错误提示。
  7. 可以为每个TextField设置最大长度限制,以防止输入过长的字符。

以下是一个示例代码,演示了如何实现上述功能:

代码语言:txt
复制
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

import java.util.regex.Pattern;

public class Main extends Application {

    private static final Pattern VALID_PATTERN = Pattern.compile("[a-z0-9]*");

    @Override
    public void start(Stage primaryStage) {
        GridPane gridPane = new GridPane();
        gridPane.setPadding(new Insets(10));
        gridPane.setHgap(10);

        TextField lowercaseTextField = new TextField();
        TextField digitTextField = new TextField();

        lowercaseTextField.setPromptText("Only lowercase letters");
        digitTextField.setPromptText("Only digits");

        lowercaseTextField.textProperty().addListener((observable, oldValue, newValue) -> {
            if (!isValidInput(newValue)) {
                lowercaseTextField.setText(oldValue);
            }
        });

        digitTextField.textProperty().addListener((observable, oldValue, newValue) -> {
            if (!isValidInput(newValue)) {
                digitTextField.setText(oldValue);
            }
        });

        gridPane.add(lowercaseTextField, 0, 0);
        gridPane.add(digitTextField, 0, 1);

        Scene scene = new Scene(gridPane, 200, 100);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    private boolean isValidInput(String input) {
        return VALID_PATTERN.matcher(input).matches();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

在上述示例代码中,我们创建了两个TextField,分别用于接收小写字母和数字。通过添加文本变化监听器,我们可以在用户输入时进行过滤。isValidInput()方法使用正则表达式来检查用户输入的字符是否为小写字母或数字。如果不符合要求,我们将文本框的值重置为旧值,以确保只接受符合要求的字符。

这只是一个简单的示例,你可以根据实际需求进行扩展和优化。

相关搜索:如何在数据集中找到重复的名称并将它们放在单独的列中?在管道中使用extract :选择数字并将它们放入单独的变量中如何创建只接受数字和字符".“的字符串。在c中?如何分隔多个分隔值并将它们存储到单独的变量中?如何在雪花中拆分数据并将它们放在各自的列中如何从firebase中检索键和值并将它们存储在两个单独的变量中如何分解由冒号和分号分隔的文件,并将每个元素放在单独的行/行上?如何从href中获取原始大小的图像(高度和宽度),并将它们放在属性上。使用jqueryProlog,将1到0和0到1进行交换并将它们放在列表中的谓词输入数字A和B,并将它们相加,因为A在Python中具有预定义的限制如何重新排列单独的数据帧并将它们连接到单个摘要数据帧中?在Java语言中,如何用循环将句子分成单独的单词,并将它们单独发送到ArrayList中?如何在bash中加载文件和所有结果放在单独的文件中?如何组合两个不同类型的数组并将它们放在一个列表中如何修复python类型只接受DateTime中的datetime和date对象作为输入?如何从一个列中提取链接和用户,并将它们放在另一个列中?如何找到文件中的行数和不同的元素,并将它们写入header,Scala如何将多个JSON对象合并为一个,并将它们的值放在工具提示中如何在SQL中计算不同的行,并将它们全部放在同一个表中?如何接受由逗号分隔的两部分用户输入,并将它们放入不同的列表中
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券