代码之家  ›  专栏  ›  技术社区  ›  GuidoG

在代码中设置文本时,MaxLength属性无效

  •  1
  • GuidoG  · 技术社区  · 6 年前

    我注意到,当我设置Edit或DBEdit控件的MaxLength属性时,这并不能阻止我在控件上放置大于代码中MaxLength的文本。

    例如,当我设置MaxLength=12时

    • 我无法使用“复制/粘贴”粘贴较长的文本

    但我能做到:

    Edit1.Text := '012345678901234567890123456789'
    

    这种行为正常吗?东京也是这样吗?
    更重要的是,有没有一个简单的方法来防止这种情况?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Rudy Velthuis    6 年前

    与10.2相同。东京。财产 TEdit.Text 未更改地继承自 TControl TCustomEdit TWinControl ). 以及 TControl.SetText 不知道任何关于 MaxLength CM_TEXTCHANGED 信息,但是 t自定义编辑 ,它也不使用它来限制文本长度。

    变成你自己的 TMyEdit ,自己办理登机手续 SetText 安装组件并使用它。