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

JavaFX在TextField上按模式设置输入筛选器

JavaFX是一种用于构建富客户端应用程序的Java库。它提供了丰富的图形化用户界面(GUI)组件和功能,可以用于开发跨平台的桌面应用程序。

在JavaFX中,可以使用输入筛选器来限制用户在TextField上输入的内容。输入筛选器是一个函数,它接受用户输入的文本并返回一个经过筛选后的文本。通过设置输入筛选器,可以实现对用户输入的限制,例如只允许输入数字、限制输入的长度、过滤特殊字符等。

以下是一个示例代码,演示如何在JavaFX的TextField上按模式设置输入筛选器:

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

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) {
        TextField textField = new TextField();
        
        // 设置输入筛选器
        TextFormatter<String> textFormatter = new TextFormatter<>(change -> {
            String newText = change.getControlNewText();
            if (newText.matches("[0-9]*")) {
                return change;
            }
            return null;
        });
        textField.setTextFormatter(textFormatter);
        
        primaryStage.setScene(new Scene(textField, 200, 100));
        primaryStage.show();
    }

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

在上述示例中,我们创建了一个TextField,并通过TextFormatter设置了输入筛选器。输入筛选器使用正则表达式[0-9]*来限制用户只能输入数字。如果用户输入的文本符合筛选条件,则允许输入;否则,将不会有任何变化。

JavaFX提供了丰富的GUI组件和功能,可以用于开发各种类型的桌面应用程序,包括数据录入、图形化编辑器、游戏等。通过使用JavaFX,开发人员可以轻松创建具有良好用户体验的应用程序。

腾讯云提供了云计算相关的产品和服务,其中包括云服务器、云数据库、云存储等。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于腾讯云的产品和服务信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Using JavaFX UI Controls 12 Table View

    很多JavaFX SDK API种的类为表格表单中呈现数据。JavaFX 应用中对创建表格最重要的是TableView, TableColumn和TableCell这三个类。...addFirstName.clear(); addLastName.clear(); addEmail.clear(); } }); 当用户点击添加按钮,文本域输入的文本将被添加到...图 12-7 多列排序 作为应用的开发人员,你可以通过setSortType方法设置每一列的排序优先级。你可以分别指定升序和降序的排列规则,例如,用下面的代码来设置emailCol 降序的排序。...用户键入单元格中键入了新的值,然后暗下来 Enter键。只有下了Enter键,单元格编辑才算结束。这一行为取决于TextField的实现。...表 12-8编辑表格的单元格 请记住:默认的TextField 实现,需要用户下Enter键来提交编辑。

    11.4K20

    DJ 风格 Java 桌面音乐播放

    ,你肯定会喜欢它的!... JavaFX 中,Stage 是应用程序窗口,其中包含称为 Scene 的空间。Scene 包含界面的组件,如 UI 空间(按钮,输入框,复选框),容器等。...TextField userTextField = new TextField(); grid.add(userTextField, 1, 1); /...上面代码的意思是:创建一个面板,然后面板添加标签,输入框和按钮,并对按钮添加绑定事件,然后把这个面板添加到场景中,这个窗口就完成了。 五、最后 Java 桌面 DJ 音乐播放是真的香!...不知道你对这款音乐播放有什么感受,欢迎评论区说说自己的想法。人们都喜欢美的好的事物,而今天的这个项目是通过 Java 代码撸出来的,难道你还不会不喜欢 Java 这门编程语言吗?

    3.8K21

    JavaFX 简介

    用户输入 这个程序可以用来处理用户登录的情况,代码如下,重要部分都添加了注释。代码的最后一部分使用setOnAction函数为按钮添加了点击事件,当点击按钮的时候会显示文本。...--设置布局--> <GridPane xmlns="http://<em>javafx</em>.com/<em>javafx</em>" xmlns:fx="http://<em>javafx</em>.com/fxml"...FXML中用fx:id属性指定的ID,可以控制中声明为一个类字段,通过这个字段就可以和界面组件进行交互。同样道理,onAction声明的事件处理程序,控制中就是一个方法。...如果希望修改组件样式,JavaFX提供了CSS接口,让我们可以直接使用CSS文件修改样式。首先需要在FXML文件中添加相应样式表的引用。文件名前面的@表示这个CSS文件和FXML文件同一目录下。...#btnShowPassword { -fx-background-color: deeppink; } 上面用了ID选择,所以对应地,FXML中也需要ID属性。

    5.7K81

    Flutter TextField输入控件)

    1、常用属性值及含义 TextField常用属性值 含义 maxLength 最大长度,设置此项会让TextField右下角有一个输入数量的统计字符串 maxLines 最大行数 autocorrect...允许的输入格式 onChanged 内容改变的回调 onSubmitted 内容提交(回车)的回调 enabled 是否禁用 示例 TextField( maxLength...: 30,//最大长度,设置此项会让TextField右下角有一个输入数量的统计字符串 maxLines: 1,//最大行数 autocorrect: true,//是否自动更正...TextInputType.multiline 带有选项以启用有符号和十进制模式的数字键盘。...示例 TextField( keyboardType: TextInputType.number, ), 5.2 textCapitalization 字母大写 TextField提供了一些有关如何使用户输入中的字母大写的选项

    3.3K20

    iOS UITextField详解

    )]; 把textfield加到视图中 [self.window addSubview:text]; 设置边框样式 只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect...{ //返回一个BOOL值指明是否允许根据用户请求清除内容 //可以设置特定条件下才允许清除内容 return YES; } -(BOOL)textFieldShouldReturn...SearchBar中,将会不触发Search事件,因为你自己限制不让输入\n,好惨,我项目中才发现的。)...当然,你还可以以上方法return之前,做一提示的,比如提示用户只能输入数字之类的。如果你觉得有需要的话。...replacementString:(NSString *)string; { //string就是此时输入的那个字符 textField就是此时正在输入的那个输入框 返回YES就是可以改变输入框的值

    1.8K30

    安卓软件开发:用JetpackCompose实现NimReplyAppLogic中篇

    中篇中,深入探讨 NimReplyApp 的业务逻辑实现,重点关注应用的核心功能,如电子邮件的获取、筛选、状态管理。...一、项目概览 NimReplyAppLogicf实现以下核心功能:电子邮件的数据源管理:通过 ViewModel 和 Repository 模式管理应用的数据源。...电子邮件筛选功能:基于用户输入动态更新和筛选邮件列表。电子邮件详情和状态管理:跟踪邮件的已读、未读和星标状态,使用 Jetpack Compose 更新 UI。...2.2 ViewModel 的实现ViewModel 是 MVVM 模式中的核心组件,用于处理数据的逻辑和状态管理。 ViewModel 中定义邮件的筛选、更新操作以及与 UI 组件的交互逻辑。...三、实现筛选功能:实时更新电子邮件列表为了实现邮件的筛选功能,使用 LaunchedEffect 和 remember 跟踪用户的搜索输入,动态更新邮件列表。

    12920

    JavaFX 11发行说明

    添加API以自定义Spinner控件的步骤重复计时 JavaFX 11中修改值步骤之前,必须在Spinner控件箭头按钮下鼠标的默认持续时间。...initialDelay:在下一个值步骤之前必须在箭头按钮下鼠标的持续时间。默认值现在为300毫秒。 repeatDelay:第一个值步骤之后,每个连续步骤必须按下鼠标的持续时间。...已知的问题 JavaFXUbuntu 18.04使用Wayland与OpenJDK 11崩溃 启用XWayland窗口服务时,JavaFXUbuntu 18.04 Linux机器崩溃。...只要FX窗口工具包代码Linux使用GTK 3,就会发生这种情况,这是JavaFX 11的默认设置。 建议的解决方法是在运行JavaFX应用程序时使用Xorg服务而不是Wayland服务。...GetScreenCapture方法中删除对StretchBlt的调用 窗口的工具包 JDK-8191885 [MacOS] JavaFX主窗口无法MacOS中从全屏模式返回 窗口的工具包 JDK-8196031

    6.6K60

    JavaFX 11 发布,与 JDK 拆分后的首个正式大版

    由于 JavaFX 库被写成了 Java API,因此 JavaFX 应用程序代码可以调用各种 Java 库中的 API,例如 JavaFX 应用程序可以使用 Java API 库来访问本地系统功能并且连接到基于服务中间件的应用程序... JavaFX 11 中修改值步骤之前,必须在 Spinner 控件箭头按钮下鼠标一段默认持续时间,JavaFX 11 中已添加两个新属性“initialDelay”和“repeatDelay”来配置此操作...javafx.* 模块现在由应用程序类加载加载,默认情况下不再具有权限。...特性: 新增:添加了公共 FX Robot API 以支持模拟用户交互,例如在键盘上输入,使用鼠标并捕获图形信息。 移除:FX Media 移除了对 libavcodec 53 和 55 的支持。...此外公告还提供了关于以下一些常见问题的解决方案: OpenJDK 11 环境下,JavaFX Ubuntu 18.04 启用 Wayland 时崩溃。

    2.3K40

    SwiftUI中使用UIKit视图

    协调 苹果框架很喜欢使用协调(Coordinator)这个名词,UIKit开发中有协调设计模式、Core Data中有持久化存储协调。...例如,UIKit中我们将一个代理对象附加到Text field视图上,当用户输入时,当用户下return键时,该代理对象中对应的方法将被调用。...右侧的预览中,我们可以看到placeholder可以正常显示,如果你在其中输入文字,表现的状态也同TextField完全一致。...如果按照TextField的正常行为,当我们在其中输入任何文本时,下方的Text中应该显示出对应的内容,不过我们当前的代码版本中,并没有表现出预期的行为。...查看源代码 onCommit 版本2的代码中,我们为TextFieldWrapper添加了onCommit设置,在用户输入return时会触发该段代码。

    8.2K22
    领券