编写JavaFX程序,实现一个信息采集功能,主体采用BorderPane,要求: 1)Top区放置一个标签“个人信息”,并设置字体大小和颜色; 2)Bottom区放置两个按钮“提交”和“重填”; 3)Right区放置一个文本区; 4)Center区是放置信息填写的各种组件,如图所示,其中证件类型有:身份证、军人证、学生证和护照。 当点击“提交”按钮时,将填写的信息采集到Right区的文本区中;当点击“重填”按钮时,清空所有填写的内容。设计合适的舞台和场景,进行测试。

时间: 2024-02-22 21:01:07 浏览: 15
好的,我会根据您的要求编写JavaFX程序,实现信息采集功能。 首先,我们需要创建一个JavaFX项目,并添加必要的依赖库。 接着,我们可以开始编写代码。以下是一个简单的实现: ```java import javafx.application.Application; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.ChoiceBox; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.scene.layout.BorderPane; import javafx.scene.layout.GridPane; import javafx.scene.layout.HBox; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.stage.Stage; public class InfoCollector extends Application { private TextField nameField; private TextField idField; private ChoiceBox<String> certTypeChoiceBox; private Label resultLabel; @Override public void start(Stage primaryStage) throws Exception { // 创建顶部标签 Label titleLabel = new Label("个人信息"); titleLabel.setFont(Font.font("Arial", FontWeight.BOLD, 24)); // 创建底部按钮 Button submitButton = new Button("提交"); Button resetButton = new Button("重填"); // 创建右侧文本区 resultLabel = new Label(); resultLabel.setWrapText(true); // 创建中间信息填写区 GridPane infoGrid = new GridPane(); infoGrid.setAlignment(Pos.CENTER); infoGrid.setHgap(10); infoGrid.setVgap(10); infoGrid.setPadding(new Insets(25, 25, 25, 25)); infoGrid.add(new Label("姓名:"), 0, 0); nameField = new TextField(); infoGrid.add(nameField, 1, 0); infoGrid.add(new Label("证件类型:"), 0, 1); certTypeChoiceBox = new ChoiceBox<>(); certTypeChoiceBox.getItems().addAll("身份证", "军人证", "学生证", "护照"); certTypeChoiceBox.setValue("身份证"); infoGrid.add(certTypeChoiceBox, 1, 1); infoGrid.add(new Label("证件号码:"), 0, 2); idField = new TextField(); infoGrid.add(idField, 1, 2); // 创建底部按钮区 HBox buttonBox = new HBox(); buttonBox.setAlignment(Pos.CENTER); buttonBox.setSpacing(10); buttonBox.getChildren().addAll(submitButton, resetButton); // 创建主布局 BorderPane root = new BorderPane(); root.setTop(titleLabel); root.setCenter(infoGrid); root.setBottom(buttonBox); root.setRight(resultLabel); BorderPane.setAlignment(titleLabel, Pos.CENTER); BorderPane.setAlignment(resultLabel, Pos.TOP_RIGHT); // 绑定按钮事件 submitButton.setOnAction(event -> { submit(); }); resetButton.setOnAction(event -> { reset(); }); // 创建场景 Scene scene = new Scene(root, 600, 400); // 设置窗口标题和场景 primaryStage.setTitle("信息采集"); primaryStage.setScene(scene); // 显示窗口 primaryStage.show(); } private void submit() { String name = nameField.getText(); String certType = certTypeChoiceBox.getValue(); String id = idField.getText(); resultLabel.setText("姓名:" + name + "\n证件类型:" + certType + "\n证件号码:" + id); } private void reset() { nameField.setText(""); certTypeChoiceBox.setValue("身份证"); idField.setText(""); resultLabel.setText(""); } public static void main(String[] args) { launch(args); } } ``` 这个程序创建了一个顶部的标签、一个底部的提交和重填按钮、一个右侧的文本区和一个中间的信息填写区。 当点击提交按钮时,程序会将填写的信息采集到右侧的文本区中;当点击重填按钮时,程序会清空所有填写的内容。 您可以根据需要进行修改和优化。

相关推荐

最新推荐

recommend-type

JavaFX实现UI美观效果代码实例

主要介绍了JavaFX实现UI美观效果代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
recommend-type

javafx实现五子棋游戏

主要为大家详细介绍了javafx实现五子棋游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

android手机应用源码Imsdroid语音视频通话源码.rar

android手机应用源码Imsdroid语音视频通话源码.rar
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

可见光定位LED及其供电硬件具体型号,广角镜头和探测器,实验设计具体流程步骤,

1. 可见光定位LED型号:一般可使用5mm或3mm的普通白色LED,也可以选择专门用于定位的LED,例如OSRAM公司的SFH 4715AS或Vishay公司的VLMU3500-385-120。 2. 供电硬件型号:可以使用常见的直流电源供电,也可以选择专门的LED驱动器,例如Meanwell公司的ELG-75-C或ELG-150-C系列。 3. 广角镜头和探测器型号:一般可采用广角透镜和CMOS摄像头或光电二极管探测器,例如Omron公司的B5W-LA或Murata公司的IRS-B210ST01。 4. 实验设计流程步骤: 1)确定实验目的和研究对象,例如车辆或机器人的定位和导航。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。
recommend-type

"互动学习:行动中的多样性与论文攻读经历"

多样性她- 事实上SCI NCES你的时间表ECOLEDO C Tora SC和NCESPOUR l’Ingén学习互动,互动学习以行动为中心的强化学习学会互动,互动学习,以行动为中心的强化学习计算机科学博士论文于2021年9月28日在Villeneuve d'Asq公开支持马修·瑟林评审团主席法布里斯·勒菲弗尔阿维尼翁大学教授论文指导奥利维尔·皮耶昆谷歌研究教授:智囊团论文联合主任菲利普·普雷教授,大学。里尔/CRISTAL/因里亚报告员奥利维耶·西格德索邦大学报告员卢多维奇·德诺耶教授,Facebook /索邦大学审查员越南圣迈IMT Atlantic高级讲师邀请弗洛里安·斯特鲁布博士,Deepmind对于那些及时看到自己错误的人...3谢谢你首先,我要感谢我的两位博士生导师Olivier和Philippe。奥利维尔,"站在巨人的肩膀上"这句话对你来说完全有意义了。从科学上讲,你知道在这篇论文的(许多)错误中,你是我可以依
recommend-type

实现实时监控告警系统:Kafka与Grafana整合

![实现实时监控告警系统:Kafka与Grafana整合](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9tbWJpei5xcGljLmNuL21tYml6X2pwZy9BVldpY3ladXVDbEZpY1pLWmw2bUVaWXFUcEdLT1VDdkxRSmQxZXB5R1lxaWNlUjA2c0hFek5Qc3FyRktudFF1VDMxQVl3QTRXV2lhSWFRMEFRc0I1cW1ZOGcvNjQw?x-oss-process=image/format,png) # 1.1 Kafka集群架构 Kafka集群由多个称为代理的服务器组成,这