TEdit控件的NumbersOnly属性

时间:2019-06-22 12:44:34

标签: c++builder vcl

the documentation尚不清楚NumbersOnly属性是否设置为“ true”是否允许使用小数点分隔符引入数字。在我的小型测试中,我得出的结论是只允许使用整数,但是我不确定这一点,并且正在寻找确认。

1 个答案:

答案 0 :(得分:2)

NumbersOnly属性设置/清除了Edit的HWND手柄上的ES_NUMBER style

  

仅允许数字输入编辑控件。请注意,即使使用此设置,仍然可以将非数字粘贴到编辑控件中。

因此,不能,它不允许用户键入小数点分隔符,但用户可以将其复制/粘贴到编辑字段中。

如果希望用户能够键入小数点分隔符,请不要将NumbersOnly设置为true,而应使用OnKey(Down|Up|Press)事件来手动过滤掉不需要的击键根据需要。

否则,请找到一个本地支持十进制数字输入的第三方编辑控件。许多流行的VCL组件套件(TMS,DevExpress等)具有自定义的Edit控件,其功能比标准TEdit所提供的功能更多。