JavaFX UI控件教程(二十四)之Password Field

翻译自  Password Field

在本章中,您将了解另一种类型的文本控件,即密码字段。

PasswordField类实现一个专门的文本字段。通过显示回显字符串来隐藏用户键入的字符。图23-1显示了一个密码字段,其中包含提示消息。

图23-1带有提示消息的密码字段

 

创建密码字段

入门级任务是使用示例23-1中的代码创建密码字段。

示例23-1创建密码字段

PasswordField passwordField = new PasswordField();
passwordField.setPromptText("Your password");

对于您的用户界面,您可以在密码字段中附带提示消息,也可以添加通知标签。与TextField类一样,PasswordField该类提供了setText在启动应用程序时在控件中呈现文本字符串的方法。但是,setText方法中指定的字符串将被密码字段中的echo字符隐藏。默认情况下,echo字符是星号。图23-2显示了包含预定义文本的密码字段。

图23-2带有设置文本的密码字段

可以通过该getText方法获得在密码字段中键入的值。您可以在应用程序中处理此值,并根据需要设置身份验证逻辑。

 

评估密码

花点时间在示例23-2中查看可以在用户界面中应用的密码字段的实现。

例23-2实现认证逻辑

final Label message = new Label("");VBox vb = new VBox();
vb.setPadding(new Insets(10, 0, 0, 10));
vb.setSpacing(10);
HBox hb = new HBox();
hb.setSpacing(10);
hb.setAlignment(Pos.CENTER_LEFT);Label label = new Label("Password");
final PasswordField pb = new PasswordField();pb.setOnAction(new EventHandler<ActionEvent>() {@Override public void handle(ActionEvent e) {if (!pb.getText().equals("T2f$Ay!")) {message.setText("Your password is incorrect!");message.setTextFill(Color.rgb(210, 39, 30));} else {message.setText("Your password has been confirmed");message.setTextFill(Color.rgb(21, 117, 84));}pb.clear();}
});hb.getChildren().addAll(label, pb);
vb.getChildren().addAll(hb, message);

使用该setOnAction方法定义密码字段的认证逻辑。提交密码时会调用此方法,并创建一个新EventHandler对象来处理键入的值。如果键入的值与所需的密码不同,则相应的消息将显示为红色,如图23-3所示。

图23-3密码不正确

如果键入的值满足预定义条件,则会显示确认消息,如图23-4所示。

图23-4密码正确

出于安全原因,最好在键入值后清除密码字段。在例23-2中,在执行认证之后为passwordField设置空字符串。

 

相关的API文档 

  • PasswordField

  • TextInputControl

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/325022.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3分钟内看完这,bootstraptable表格控件,受益匪浅!

今天分享一下bootstraptable的相关技能点&#xff0c;由于第一次接触&#xff0c;所以刚开始碰了好多壁&#xff0c;于是趁现在过去不久&#xff0c;先总结总结。Bootstraptable简单的来说就是一个表格控件&#xff0c;但是这个表格可不是一般的表格&#xff0c;分页、排序、查…

微软Azure开源开发者(深圳)峰会等你来

微软开发技术与云平台自从迈向开放、开源、跨平台的转型以来&#xff0c;已经受到全球开源社区们的关注。 从 Github 上高居世界首位的开源项目贡献数量&#xff0c;可以看到微软贯彻开源战略的实际行动。另一方面&#xff0c;微软也主动与开源社区做密切的技术交流。 本次 Azu…

OJ4121 and OJ2968-股票买卖 and Maximun sum【各种dp之6 and 9】

股票买卖 题目 阿福该炒股了&#xff0c;然后假设他已经预测到了后几天的股票&#xff0c;要求他最多买卖两次的赚到的最大值。 &#xff08;注&#xff1a;他只有第一次卖了才能再买&#xff09; 输入 3 7 5 14 -2 4 9 3 17 6 6 8 7 4 1 -2 4 18 9 5 2 输出 28 2…

面向对象VS面向过程

1.面向过程&#xff1a;强调的是功能行为&#xff0c;以函数为最小单位&#xff0c;考虑怎样做。 2.面向对象&#xff1a;强调具备了功能的对象&#xff0c;以类/对象为最小单位&#xff0c;考虑谁来做。

这个点名系统太好用了,快来看看……

声明&#xff1a;软件为本人原创&#xff0c;后台回复&#xff1a;随机点名系统&#xff0c;免费下载。大家好&#xff0c;我是雄雄&#xff0c;昨天公众号给大家分享了windows系统和office办公软件激活的方法&#xff0c;正中好多粉丝的下怀。【原文在这里】今天在给大家分享一…

JavaFX UI控件教程(二十二)之Titled Pane和Accordion

翻译自 Titled Pane and Accordion 本章介绍如何在JavaFX应用程序中使用accordion和title窗格的组合。 标题窗格是带标题的面板。它可以打开和关闭&#xff0c;它可以封装任何Node诸如UI控件或图像以及添加到布局容器的元素组。 标题窗格可以使用手风琴控件进行分组&#x…

在ASP.NET Core 2.0中使用MemoryCache

说到内存缓存大家可能立马想到了HttpRuntime.Cache,它位于System.Web命名空间下&#xff0c;但是在ASP.NET Core中System.Web已经不复存在。今儿个就简单的聊聊如何在ASP.NET Core中使用内存缓存。我们一般将经常访问但是又不是经常改变的数据放进缓存是再好不过了&#xff0c;…

ssl1016 OJ8467-数的划分 鸣人的影分身【各种dp之8 7】

数的划分 Description 将整数n分成k份&#xff0c;且每份不能为空&#xff0c;任意两份不能相同(不考虑顺序)。   例如&#xff1a;n7&#xff0c;k3 (6&#xff1c;n&#xff1c;&#xff1d;200,2&#xff1c;&#xff1d;k&#xff1c;&#xff1d;6&#xff09;&#…

数据库的嵌套查询和统计查询

①求选修了数据结构的学生学号和成绩。 select s_no,score from choice where s_no in (select s_no from course where course_name数据结构) ②求01001课程的成绩高于张彬的学生学号和成绩。 select s_no,score from choice where course_no01001 and score>(select scor…

匿名对象的使用

package com.wdl.day09;/** 匿名对象的使用* 1.理解&#xff1a;我们创建的对象&#xff0c;没有显式的赋给一个变量名。即为匿名对象* 2.特征&#xff1a;匿名对象只能调用一次。* 3.使用&#xff1a;如下**/ public class InstanceTest {public static void main(String[] ar…

sql server中创建数据库和表的语法

下面是sql server中创建数据库&#xff0c;创建数据表以及添加约束的sql语句&#xff1a; use master --创建数据库 if exists (select * from sysdatabases where name jobtest)drop database jobtest create database jobtest on (namejobtest_data,filename D:\DB\jobtes…

在ASP.NET Core 2.0中使用CookieAuthentication

在ASP.NET Core中关于Security有两个容易混淆的概念一个是Authentication&#xff08;认证&#xff09;&#xff0c;一个是Authorization&#xff08;授权&#xff09;。而前者是确定用户是谁的过程&#xff0c;后者是围绕着他们允许做什么&#xff0c;今天的主题就是关于在ASP…

JavaFX UI控件教程(二十五)之Color Picker

翻译自 Color Picker 本章介绍ColorPicker控件&#xff0c;提供其设计概述&#xff0c;并说明如何在JavaFX应用程序中使用它。 JavaFX SDK中的颜色选择器控件是一个典型的用户界面组件&#xff0c;使用户可以从可用范围中选择特定颜色&#xff0c;或通过指定RGB或HSB组合来设…

ssl1217-删边【图论,dfs】

题目 给出一个连通无向图&#xff0c;求最多能删掉多少条边后还是连通图。 输入 4(顶点数) 6(边数) 1 2 (表示一条点1到点2的线) 1 3 1 4 2 3 2 4 3 4 输出 3 dfs解题思路 这道题其实不用dfs更简单&#xff0c;但是毕竟例题还是用一下吧。 首先我们如果到达一个点便…

英语不会读怎么办?它来教你……

大家好&#xff0c;我是雄雄&#xff0c;今天我又给大家分享好看又实用的软件啦~今天给大家分享的是一个比昨天的随机点名系统还要实用的软件&#xff0c;如果说昨天的随机点名系统只适合老师或者某些需要点名的朋友使用的话&#xff0c;那么今天分享的软件则是一个人人都可使用…

数据维护

&#xff08;1&#xff09;在学生表Student中插入一条记录&#xff08;‘001201’&#xff0c;‘王一山’&#xff0c;‘男’&#xff0c;1980-12-4&#xff09;。 insert into student values(001201,王一山,男,1980-12-4) &#xff08;2&#xff09;插入一条选课记录&#xf…

深入探索.NET框架内部了解CLR如何创建运行时对象

前言 SystemDomain, SharedDomain, and DefaultDomain。对象布局和内存细节。方法表布局。方法分派&#xff08;Method dispatching&#xff09;。 因为公共语言运行时(CLR)即将成为在Windows上创建应用程序的主角级基础架构, 多掌握点关于CLR的深度认识会帮助你构建高效的, …

方法的重载

package com.wdl.day09;/** 方法的重载&#xff08;overload&#xff09; loading...** 1.定义&#xff1a;在同一个类中&#xff0c;允许存在一个以上的同名方法&#xff0c;只要它们的参数个数或者参数类型不同即可。** "两同一不同":同一个类、相同方法名* …

JavaFX UI控件教程(二十六)之Pagination Control

翻译自 Pagination Control 本章介绍如何向JavaFX应用程序添加分页控件。它教授如何向应用程序添加分页控件&#xff0c;管理其页面项&#xff0c;以及使用CSS样式设置控件元素的样式。 分页控件&#xff0c;用于浏览分成较小部分的多页内容。典型用途包括浏览邮箱中的电子邮…

长风破浪会有时,直挂云帆济沧海……

自从长假开学以来&#xff0c;班内学生的状态一直不如我所愿。前几天刚入学&#xff0c;因为马上就就业了&#xff0c;所以对他们的安排还是以做项目为主&#xff0c;早在假期的时候就已经将学生分为人数不等的8个小组&#xff0c;其中开发两个小组&#xff0c;前端5个小组以及…