问题之三个输入框

问题描述:

等价类划分中的EditBox问题的升级版!!!三个输入框~

三个输入框,都只能允许1到6个英文字符或数字,按OK结束。

等价类划分:


编号


有效等价类


编号


无效等价类


1


1—6(长度)


3


0或>=7


2


a-z,A-Z,0-9(字符)


4


英文/数字以外字符,控制字符,标点符号

根据有效或无效的等价类设计的测试用例:


编号


第一框


第二框


第三框


期待输出


1


123ert


.,12


第一框的长度应该为1-6

第二框输入正确

第三框的字符应当仅包含a-z,A-Z,0-9


2


wsed2


Ss1w3e


SSEEjo


第一框输入正确

第二框输入正确

第三框输入正确


3


iu,.l


,,


12e3r45g


第一框的字符应当仅包含a-z,A-Z,0-9

第二框的字符应当仅包含a-z,A-Z,0-9

第三框的长度应该为1-6


4


ji7ug6t


\[email protected]


第一框的长度应该为1-6

第二框的长度应该为1-6

第三框的字符应当仅包含a-z,A-Z,0-9


5


FR45^


AwS666


第一框的字符应当仅包含a-z,A-Z,0-9

第二框输入正确

第三框的长度应该为1-6

源代码如下:

  1 package test;
  2
  3 import javafx.application.Application;
  4 import javafx.event.ActionEvent;
  5 import javafx.event.EventHandler;
  6 import javafx.scene.Scene;
  7 import javafx.scene.control.Button;
  8 import javafx.scene.control.TextField;
  9 import javafx.scene.layout.AnchorPane;
 10 import javafx.scene.layout.StackPane;
 11 import javafx.scene.text.Text;
 12 import javafx.stage.Stage;
 13
 14 public class test extends Application{
 15      public static void main(String[ ] args) {
 16         test.launch( args );
 17         }
 18
 19      public void start( Stage primaryStage ) {
 20         primaryStage.setTitle( "Test!" );
 21         AnchorPane root = new AnchorPane();
 22
 23         Text text = new Text("请输入1到6位 数字或字母");
 24         Text text1 = new Text("第一框:");
 25         Text text2 = new Text("第二框:");
 26         Text text3 = new Text("第三框:");
 27         final TextField name1 = new TextField();
 28         final TextField name2 = new TextField();
 29         final TextField name3 = new TextField();
 30
 31         AnchorPane.setLeftAnchor(text,50.0);
 32         AnchorPane.setTopAnchor(text, 50.0);
 33         AnchorPane.setLeftAnchor(text1,50.0);
 34         AnchorPane.setTopAnchor(text1, 100.0);
 35         AnchorPane.setLeftAnchor(text2,50.0);
 36         AnchorPane.setTopAnchor(text2, 150.0);
 37         AnchorPane.setLeftAnchor(text3,50.0);
 38         AnchorPane.setTopAnchor(text3, 200.0);
 39         AnchorPane.setLeftAnchor(name1,150.0);
 40         AnchorPane.setTopAnchor(name1, 100.0);
 41         AnchorPane.setLeftAnchor(name2,150.0);
 42         AnchorPane.setTopAnchor(name2, 150.0);
 43         AnchorPane.setLeftAnchor(name3,150.0);
 44         AnchorPane.setTopAnchor(name3, 200.0);
 45
 46         Button button = new Button("OK");
 47         AnchorPane.setLeftAnchor(button,200.0);
 48         AnchorPane.setTopAnchor(button, 250.0);
 49
 50         button.setOnAction(new EventHandler<ActionEvent>(){
 51             public void handle(ActionEvent arg0){
 52                 String one = name1.getText();
 53                 String two = name2.getText();
 54                 String three = name3.getText();
 55                 AnchorPane root1 = new AnchorPane();
 56                 Stage stage1 = new Stage();
 57                 Text text0 = new Text();
 58                 Text text5 = new Text();
 59                 Text text6 = new Text();
 60                 AnchorPane.setLeftAnchor(text0, 50.0);
 61                 AnchorPane.setTopAnchor(text0, 50.0);
 62                 AnchorPane.setLeftAnchor(text5, 50.0);
 63                 AnchorPane.setTopAnchor(text5, 100.0);
 64                 AnchorPane.setLeftAnchor(text6, 50.0);
 65                 AnchorPane.setTopAnchor(text6, 150.0);
 66                 root1.getChildren().addAll(text0,text5,text6);
 67
 68                 if(one.length()<7 && one.length()>0
 69                         && one.matches("([a-z]|[A-Z]|[0-9]){1,}"))
 70                     text0.setText("第一框输入正确");
 71                 else if(one.length()<1 || one.length()>6)
 72                     text0.setText("第一框的长度应该为1-6");
 73                 else
 74                     text0.setText("第一框的字符应当仅包含a-z,A-Z,0-9");
 75
 76                 if(two.length()<7 && two.length()>0
 77                         && two.matches("([a-z]|[A-Z]|[0-9]){1,}"))
 78                     text5.setText("第二框输入正确");
 79                 else if(two.length()<1 || two.length()>6)
 80                     text5.setText("第二框的长度应该为1-6");
 81                 else
 82                     text5.setText("第二框的字符应当仅包含a-z,A-Z,0-9");
 83
 84                 if(three.length()<7 && three.length()>0
 85                         && three.matches("([a-z]|[A-Z]|[0-9]){1,}"))
 86                     text6.setText("第三框输入正确");
 87                 else if(three.length()<1 || three.length()>6)
 88                     text6.setText("第三框的长度应该为1-6");
 89                 else
 90                     text6.setText("第三框的字符应当仅包含a-z,A-Z,0-9");
 91
 92                 Scene scene2 = new Scene (root1,300,200);
 93                 stage1.setScene(scene2);
 94                 stage1.show();
 95
 96
 97             }
 98         });
 99
100         root.getChildren().addAll(button,text,text1,text2,text3,name1,name2,name3);
101
102         primaryStage.setScene(new Scene(root, 500, 500));
103         primaryStage.show( );
104     }
105
106 }

运行结果截图:

时间: 2024-10-11 12:47:38

问题之三个输入框的相关文章

逃的过初一逃不过十五之三个输入框文本内容检测的实现及测试

上周偷懒来着,就没有完成EditBox的实现,来进行测试...终于,这周逃不过了,老师布置的任务是完成三个文本框的输入并同时检测文本内容... 题目要求如下: 允许1到6个英文字符或数字,按OK结束 有效等价类: 长度:1到6:字符:a-z,A-Z,0-9 无效等价类:长度:0,7:字符:英文.数字以外字符,控制字符,标点符号等 略有不同的地方是这回要求三个文本框同时输入内容,点击OK之后同时对三个文本框的内容进行检测,并输出检测结果. 好~偷懒考虑,我就选择了比较好用的JAVA进行实现,主要原

等价类的划分之三个输入框

一.软件测试中等价类分为两种:有效等价类与无效等价类. 1.有效等价类:程序实现规格说明预先规定的功能和性能.2.无效等价类:软件功能和性能的实现不符合规格说明要求的地方. 二.怎样划分等价类: 1.如果按照区间划分,规定了取值范围,则可确定一个有效等价类和两个无效等价类: 2.如果按照数值划分,则可划分一个有效等价类和一个无效等价类: 3.如果按照限定条件,则可确定一个有效等价类和若干个无效等价类: 三.对上周的等价类划分测试软件进行改进,变成三框输入的测试 升级后的界面:

iOS界面布局之三——纯代码的autoLayout及布局动画

iOS界面布局之三--纯代码的autoLayout及布局动画 一.引言 关于界面布局,apple的策略已经趋于成熟,autolayout的优势在开发中也已经展现的淋漓尽致.除了使用storyBoard进行布局约束的拖拽,有时我们也需要在代码中进行autolayout的布局设置,Masonry库可以方便的创建约束属性,实际上,我们也没有必要再使用系统原生的代码来创建和设置约束,这篇博客只作为使用的方法备忘.前几篇布局介绍的链接如下: 使用autoresizing进行界面布局:http://my.o

iOS开发系列之三 - UITextField 用法小结

// 初始化输入框并设置位置和大小 UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 100, 300, 30)]; // 设置输入框提示 textField.placeholder = @"TextField Tip"; // 输入框中预先输入的文字 textField.text = @"预先输入的文字"; // 设置输入框文本的字体 textField.font

iOS 限制输入框不能输入中文

开发中遇到这个问题,想着还是总结下,刚开始只是限制UITextField的键盘为 UIKeyboardTypeASCIICapable,可是当用户切换了中文键盘后依然没解决问题,于是我给输入框加了监听事件,获取输入框最新的输入内容,检测输入的内容中是否含有中文,如果有中文就替换成空字符串,具体实现如下: infoView.userTF.keyboardType = UIKeyboardTypeASCIICapable; //监听输入内容 [[NSNotificationCenter defaul

图像处理之三种常见双立方插值算法

http://blog.csdn.net/jia20003/article/details/40020775 图像处理之三种常见双立方插值算法 双立方插值计算涉及到16个像素点,其中(i', j')表示待计算像素点在源图像中的包含 小数部分的像素坐标,dx表示X方向的小数坐标,dy表示Y方向的小数坐标.具体 可以看下图: 根据上述图示与双立方插值的数学表达式可以看出,双立方插值本质上图像16个像素点 权重卷积之和作为新的像素值. 其中R(x)表示插值表达式,可以根据需要选择的表达式不同.常见有基

第二百三十八节,Bootstrap输入框和导航组件

Bootstrap输入框和导航组件 学习要点: 1.输入框组件 2.导航组件 3.导航条组件 本节课我们主要学习一下Bootstrap的两个个组件功能:输入框组件和导航导航条组件. 一.输入框组件 文本输入框就是可以在<input>元素前后加上文字或按钮,可以实现对表单控件的扩展. 在左侧添加文字 input-group-addon样式class类,写在input同级的span里,给输入框添加一个左片段(Bootstrap)input-group样式class类,写在input外层div里,将

去除Bootstrap输入框聚焦时的边框轮廓线

使用Bootstrap3的时候,好处是有很多现有的控件可以使用,坏处是个性化起来会遇到不少麻烦, 单独的静态页面显示正常的, 引入Bootstrap后,有些类/通用界面组件的样式会被覆盖. 想去除默认风格或定制input输入框的边框风格,可以使用如下代码: input:focus { outline: none; border-color: #cfdc00; box-shadow: 0 0 5px rgba(207, 220, 0, 0.4); border-radius: 5px; } 在线演

Android 带清除功能的输入框控件EditText

今天学习了自定义控件,然后自己做了一个用户登录小控件EditText,就是在Android系统的输入框右边加入一个小图标,点击小图标可以清除输入框里面的内容,但是Android原生EditText不具备此功能,所以要想实现这一功能我们需要重写EditText. 先说明一下,我是用Android studio写的,代码已经共享到我的github上了,有需要的可以去下载. 我们可以为我们的输入框在上下左右设置图片,所以我们可以利用属性android:drawableRight设置我们的删除小图标,如