检测用户何时完成他/她的打字

时间:2013-02-15 19:01:39

标签: c# winforms

我在检测用户何时完成他/她在文本框中输入时遇到了一些问题。我现在最简单的情况是看他/她是否按下回车键。因为目前我的监视器屏幕报告用户输入的密钥记录为

T
To
Tod
Toda
Today [the user presses Enter]

相反,我希望只获得Today。有没有办法实现这种录音而不是使用计时器来观察用户的键盘活动?

2 个答案:

答案 0 :(得分:1)

使用计时器监控不活动是您拥有的最佳工具。他们只有一个知道你所谓的“用户已经完成”打字的人就是你。在这种特殊情况下,您声明用户必须在屏幕上显示“今天”字样时完成。但是,也许您的用户想要搜索“今天”或“Tod”?还是'Todayabolenski'? (你知道;)来自'Fictionavsky Literatzky'的着名俄罗斯作家)

另一种选择是拥有一个单词簿文件,它对你的输入匹配。但是,当用户真正寻找那个只出现在你的单词本中较大单词的开头的较小单词时,可能会发生一些令人困惑的事情。

答案 1 :(得分:1)

您的用户不会按Enter键,他按Tab键。哪个是将焦点移动到GUI应用程序中的另一个控件的标准键。或者他点击一个按钮,就像对话框的OK按钮一样。也是按下Enter键时自动激活的按钮。

现在你知道他已经完成了打字。将触发TextBox的Validating事件。您可以使用它来做任何您想做的事情,包括如果输入不可接受,实际验证和抱怨。