Flex 限制 TextInput 只接受十进制数字?
Posted
技术标签:
【中文标题】Flex 限制 TextInput 只接受十进制数字?【英文标题】:Flex restrict TextInput to accept only decimal numbers? 【发布时间】:2011-09-12 03:11:41 【问题描述】: 是否有一些简单的方法可以限制 TextInput 接受 -99.999999 到 +99.999999 范围内的十进制数字?它是 Spark TextInput。
【问题讨论】:
我正在寻找尽可能没有额外检查等的东西,可能只是准备好的组件,比如 Delphi 中的 TMaskEdit - 需要设置掩码,并且不需要额外的检查。比如 00.000000 ... 【参考方案1】:您没有指定 Spark TextInput 或 MX TextInput。您可以使用restrict 属性来防止人们输入数值(和句点)。它在 Spark 和 MX 组件上都可用。这是Spark Docs。
之后,使用NumberValidator 验证范围,设置最小值和最大值。
【讨论】:
我认为有比一直处理和检查更简单的方法:|。 Delphi - TMaskEdit 中没有类似的东西,它只处理掩码,组件将完成其余的工作? @Yordan Yanakiev 我不了解德尔福。您可以使用什么类型的语法来指定“掩码”中的上限或下限?鉴于您需要做的事情,为什么不使用 NumericStepper 或 Slider? nope @www.Flextras.com 这两个组件都不够好,我希望在编写时更多地限制用户输入并让他更好地控制他正在写的内容。 @Yordan Yanakiev 我不明白为什么 NumericStepper 或 Slider 不够好;但是如果您打算使用 TextInput;您应该使用带有验证器的限制(如我之前所述)。如果您想在用户键入时给他们反馈,您可以运行验证器以响应 textInput 上的按键事件。 用户可以选择输入他想要的值,所以 Slider 不是一个选项。 NumericStepper 也不是,因为它与 TextInput 有相同的问题。唯一的选择是某种掩码文本输入,这似乎在 atm 不可用,但它实际上是一个非常重要的 ui 组件,用于严肃的应用程序。以上是关于Flex 限制 TextInput 只接受十进制数字?的主要内容,如果未能解决你的问题,请参考以下文章
如何使 TextInput 只接受最多 2 个小数位的最大值?
如何使用maskRe限制ExtJs Textfield仅接受数字。 (应接受正数,负数,整数和十进制数。)