输入掩码字符时,日期好奇行为的TMaskEdit

时间:2017-11-02 17:49:04

标签: delphi vcl

我正在使用掩码编辑来创建TDateTime组件。

我使用以下面具:!99/99/0000; 1; _

除非用户输入日期,否则它们也会输入日期分隔符,如果它们位于第二部分(即月份或日期,具体取决于您的语言环境),则光标会跳转到年份部分。如果你在年份部分发出哔哔声。

我尝试在组件的keydown中捕获dateSeparator,虽然我拦截它并将其设置为0但它仍然从日/月部分跳到年份部分。我甚至尝试在将键值设置为0后重置selstart,但它不起作用。

任何关于如何克服这种行为的想法都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

不是我的问题的答案,但我通过使用OnKeyPress而不是OnKeyDown并插入以下代码解决了这个问题:

if (key = FormatSettings.DateSeparator)  then
  key := #0;