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

如何判断是哪个TextField触发了JavaFX中的EventHandler?

在JavaFX中,可以通过使用Event.getSource()方法来判断是哪个TextField触发了EventHandler。Event.getSource()方法返回触发事件的对象。

以下是一个示例代码,演示如何判断是哪个TextField触发了EventHandler:

代码语言:txt
复制
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class TextFieldEventExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        TextField textField1 = new TextField();
        TextField textField2 = new TextField();

        EventHandler<ActionEvent> eventHandler = new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent event) {
                if (event.getSource() == textField1) {
                    System.out.println("TextField1 triggered the event.");
                } else if (event.getSource() == textField2) {
                    System.out.println("TextField2 triggered the event.");
                }
            }
        };

        textField1.setOnAction(eventHandler);
        textField2.setOnAction(eventHandler);

        VBox root = new VBox(textField1, textField2);
        Scene scene = new Scene(root, 200, 200);

        primaryStage.setScene(scene);
        primaryStage.show();
    }

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

在上面的示例中,我们创建了两个TextField:textField1和textField2,并为它们都设置了相同的EventHandler。当用户在任何一个TextField中按下Enter键时,EventHandler会被触发。在EventHandler中,我们使用event.getSource()方法来判断是哪个TextField触发了事件,并打印相应的消息。

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

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

相关·内容

如何判断进程哪个容器运行

在某些情况下,可能在宿主机上存在“看得到却摸不到”进程;有的时候容器太多,想知道进程具体哪个容器运行?...我们来尝试下: 首先在容器test目录下运行sleep 10000 在宿主机ps能看到对应进程 看对应proc下cwd,也确实和容器路径一样,在/test目录下,但是宿主机实际上并没有这个路径...大概率可以判断这个进程不是在宿主机上,可以通过如下这个命令判断命令是否在容器执行: ps -e -o pid,cmd,comm,cgroup 可以看到pid为29656cgroup在docker...或者cat对应进程cgroup也可以: cat /proc/xxxx/cgroup 和我们执行sleep命令容器一致: 因此可以得出结论,pid为29656进程在 bf85501b3084601ba76b8cb303917134d58b5e7783c14c1636ff1c56a3d83c1f...容器里执行

5.1K30

Using JavaFX UI Controls 12 Table View

很多JavaFX SDK API种类为在表格表单呈现数据。在JavaFX 应用对创建表格最重要TableView, TableColumn和TableCell这三个类。...在例子 12-1, 表格组件被添加到 VBox  布局容器,然而你也可以直接将其添加到应用场景。 例子 12-1定义了3列将用来存放地址簿信息:一个联系人 姓和名以及电子邮箱地址。...定义数据模型( Data Model) 当你要在JavaFx应用创建一个表格,最好先创建一个类来定义数据模型和提供将来和表格交互方法和属性。例12-3定义了Person类来定义数据和地址簿。...默认不排列。 用户可以对表格多列进行排序,同样也可以指定每列数据在排序操作优先级。如果想多行排列,用户按住Shift同时点击想要排序每一列列头。...将Map数据添加到表格JavaFX SDK 2.2开始,你可以往表格添加Map类型数据。

11.4K20
  • Java FX制作小游戏

    Java FX制作小游戏在全栈学习Java,了解如何使用Java FX创建图形化界面很重要一步。本篇文章将向您展示如何使用Java FX制作一个简单小游戏。...下面一些JavaFX核心类详细介绍:Application:ApplicationJavaFX应用程序主类,它是所有JavaFX应用程序入口点。...Stage:Stage表示JavaFX应用程序主舞台,JavaFX顶级容器实例。通过Stage类,可以设置应用程序标题、尺寸、图标等属性,并将场景(Scene)设置为舞台内容。...Control:ControlJavaFX控件类,用于构建用户界面上可交互组件。常见控件包括Button、Label、TextField、ComboBox、ListView等。...总结通过这篇文章,我们学习了如何使用Java FX创建一个简单小游戏。我们了解了如何创建游戏窗口、处理用户输入以及显示游戏元素。

    34510

    躁!DJ 风格 Java 桌面音乐播放器

    编译、运行 Java 程序工具包。...四、JavaFx 工作原理 JavaFX 原理这样(如下图):舞台(Stage),场景(Scene),容器(Container),布局(Layout)和控件(Controls)之间关系: ?...在 JavaFX ,Stage 应用程序窗口,其中包含称为 Scene 空间。Scene 包含界面的组件,如 UI 空间(按钮,输入框,复选框),容器等。...上面代码意思:创建一个面板,然后在面板上添加标签,输入框和按钮,并对按钮添加绑定事件,然后把这个面板添加到场景,这个窗口就完成了。 五、最后 Java 桌面 DJ 音乐播放器真的香!...有了成品直观呈现,才能在视觉上产生更强冲击,可能会更加能激发你学习动力!如果通过我内容分享,能让你对编程产生兴趣,我真的开心。

    3.8K21

    Using JavaFX UI Controls 18 超链接

    组件 Hyperlink 类  Labeled 类另一种形式。...图18-1 展示了默认超链接实现3状态 图 18-1 超链接组件3状态 创建一个超链接 例 18-1 展示创建超链接代码片段 例18-1 典型超链接 Hyperlink link...因为 Hyperlink  类Labeled类一个拓展,你可以为标题设置特定字体和文字。 setOnAction 方法用来指定超链接点击时行为。...链接本地内容 在图18-2展示应用从本地目录渲染图片 图 18-2 显示图片 展示例 18-2源代码: 例 18-2利用超链接浏览图片 import javafx.application.Application...下一节程序将展示既使用标题也使用图片来创建超链接和加载远程html页面。 链接远程内容 在你JavaFx程序,通过嵌入WebView 浏览器组件来渲染 HTML内容。

    1.5K50

    Java一分钟之-设计模式:观察者模式与事件驱动

    观察者模式(Observer Pattern)和事件驱动编程Java实现组件间通信两种重要方式。在这篇博客,我们将探讨这两种模式基本概念、常见问题以及如何通过代码示例来避免这些问题。 1....观察者模式 (Observer Pattern) 定义 观察者模式一种行为设计模式,允许你定义一个订阅机制,当对象状态改变时,所有依赖它对象都会得到通知并自动更新。...事件驱动编程 事件驱动编程一种编程范式,其中程序响应用户输入、系统事件或其他异步触发事件。 常见问题与易错点 回调地狱:过多嵌套回调函数可能导致代码难以阅读和维护。...JavaFX事件驱动示例 import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler...; button.setOnAction(new EventHandler() { @Override public

    33410

    JavaFX 简介

    当然,虽然编写客户端图形程序Java弱项,但是Java并没有放弃这方面的努力。今天介绍JavaFX就是Java在编写图形界面程序最新技术。...这是官方示例程序,我们可以参考JavaFX部分来学习如何使用。下面其中一个分形JavaFX程序,点击上面的数字可以进入不同微观展示,感觉有一种看病毒微观世界感觉,很震撼。 ?...如何安装 只要你安装了最新版本JDK 8,那么就可以使用JavaFX库了。如果没有安装的话,那么赶快开始安装吧。 快速上手 第一个程序 新建一个项目,然后编写如下类,然后编译运行,即可看到结果。...如果有学习过Swing以及其他图形界面框架经验的话,应该非常容易理解这段代码。当然由于JavaFX新东西,所以我也顺便使用Java 8新特性——lambda表达式。...用FXML设计用户界面 现代图形界面框架都支持将界面和代码分离开,而且比较常用描述语言XML,例如QTQML、WPFXAML,当然JavaFX也有类似的语言,叫做FXML。

    5.7K81

    JavaFX-TableView详解

    ,不过最重要清楚了一点:TableView内部维护了一个类型为FXCollections.observableArrayList集合。...列两种数据形式: 一种维护类TableColumn类型,列每一个数据都是一个类(这里一个Person类),而String类型对应列名。...forTableColumn()); // 设置编辑响应函数 col.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<Map...增加列,删除列 这就不仅仅要删除集合数据,还要从表格里面的Columns集合删除相应数据才可以,或许你还会在删除和增加中加入一定判断来保证操作正确性: table.getColumns()....add(tempCol); // 列表显示新增列 table.getColumns().remove(index); // 删除index位置列 监听列变化 你大可以选择向源文件那样

    3.4K60

    你还在用B端大模型?OUT 了!!!用混元打造专属智能化桌面应用

    同时,JavaFX 作为 Java 生态系统功能强大 UI 框架之一,凭借其丰富组件和灵活布局能力,逐渐成为构建桌面应用首选工具。...本篇文章将详细讨论如何JavaFX 与混元大模型结合起来,构建一个智能化桌面应用,用户可以通过该应用实时与混元大模型进行交互,实现类似智能对话功能。...先上结果: 技术选型与整体架构 JavaFX 简介 JavaFX 一个现代化 UI 框架,允许开发者创建跨平台桌面应用。...开发环境配置 安装和配置 JavaFX 在这里提一下,Java 8 内置了JavaFX,但是从Java 9开始 JavaFX 不再包含在 JDK ,而是作为一个独立模块提供。...为了将这一响应显示到 JavaFX 界面,需要将返回文本解析并格式化为消息气泡。 在桌面应用程序,保持用户界面的流畅性至关重要。当调用混元大模型时,可能会遇到网络延迟或响应时间较长问题。

    39231

    Java 中文官方教程 2022 版(三)

    通过它们,您将学习如何编写代码来在您自己程序创建和使用对象。您还将了解系统在对象生命周期结束时如何清理。...匿名类表达式被突出显示: import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene...import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler...在 JavaFX 示例HelloWorld.java(在上一节匿名类讨论),您可以在此语句中用 Lambda 表达式替换突出显示匿名类: btn.setOnAction(new EventHandler...因此,Java 编译器生成类似于“定义在封闭范围局部变量 z 必须 final 或有效 final”错误消息。 目标类型 如何确定 lambda 表达式类型?

    33400

    JavaFX入门(四):JavaFX布局(一)

    布局控件我们在界面上一般看不到,它一个容器用于放置其它可视界面元素控件。(JavaFX在线API文档:JavaFX8 API Online) JavaFX布局控件类图如下: ?...当我们将一个控件拖拽到Pane时候,会自动生成layoutX和layoutY坐标。如图使用Pane为父容器设计一个简单界面: ? FXML代码如下: <?...常见一个用例场景就是,软件主界面的上面菜单栏和工具条,左边和右边可能文档或者内容列表或者常用工具集合,然后中间主要内容显示区,下面状态栏。...GridPane GridPane有点像HTMLTable布局,属于比较灵活布局方式。默认情况下,控件均匀分布在Grid或者说Table。但是我们可以指定一个控件所占行列,让其跨行和列分布。...在我们用SceneBuilder设计界面的时候,自动生成FXML文件实体元素和属性JavaFX类和属性对应,我们可以通过FXML了解对应类一些属性和方法。

    11.7K42
    领券