【问题标题】:Are there fundamental differences between TextBoxes in Windows 7 and Windows XPWindows 7 和 Windows XP 中的文本框之间是否存在根本区别
【发布时间】:2013-09-02 04:53:14
【问题描述】:

我在 .Net 4.0 中编写了一个 Windows 窗体应用程序,该应用程序利用文本框进行用户输入。该程序的目的是接受来自速记机的输入;转录员将通过它积极地为现场视频添加字幕。

我遇到的问题是,在 Windows XP 环境中,文本框按预期执行,接受 QWERTY 键盘输入以及来自速记机的输入。据我了解,该机器集成为等效于另一个键盘,但由于某种原因,在 Windows 7 中,文本框接受来自 QWERTY 板的输入,但不接受来自速记机的输入。

这让我想到了手头的问题 - Windows 7 和 Windows XP 中的文本框之间是否存在根本差异,其中是否存在可能影响其处理来自操作系统的文本的方式?

非常感谢,我希望我已经足够明确了。

【问题讨论】:

  • 功能上应该是一样的。 Win 7 版本的 TextBox 有没有可能没有焦点?
  • 嗯,这听起来很令人沮丧 - Win 7 版本绝对有焦点。 Windows 7 版本实际上将接受 QWERTY 输入,但不接受 Steno 输入。将更新 OP。
  • 您正在寻找错误的角落来解决这个问题。改变的是这种速记机将文本插入文本框的操作系统功能。就像一个日记挂钩。例如,UAC 可以阻止这种情况。这需要盲目猜测,请联系供应商寻求支持。
  • 如果机器就像键盘一样,它可以与记事本一起使用吗?
  • 我认为汉斯是对的。这不是 TextBox 接收数据的问题,而是输入数据的方式。 “相当于另一个键盘”还不够好。了解它试图做这项工作的方式,你就会找到你的肇事者。

标签: c# winforms textbox keyboard


【解决方案1】:

对实际问题给出最终答案。

Winforms 文本框仍然是相同的包装 Win32 类“编辑”。从 XP 一直到今天的 Win10,所有已知的提供 TextBox 的方法都同样有效 - WM_KEYDOWN 消息、Keybd_event、SendKeys。

唯一会产生影响的已知更改是安全性和驱动程序模型。

【讨论】:

    【解决方案2】:

    这不是文本框的问题。尝试将您的 .NET Framework 更新到最新版本。您也可以尝试使用富文本框,或者尝试在控制台中使用速记机(在 XP 和 7 中)。希望这有助于解决问题。

    【讨论】:

      【解决方案3】:

      由于 TextBox 上的操作系统,没有这样的差异。 TextBox 两个操作系统的属性相同(TextBox 没有特殊属性可以从不同来源(如键盘、速记机或其他任何东西)获取输入),是的,如果您不使用更新的框架,可能会出现错误/问题,首先更新您的系统并再次检查。你可以通过这个microsoft link.

      【讨论】:

        猜你喜欢
        • 2011-06-18
        • 2015-12-13
        • 2012-06-17
        • 2010-12-12
        • 2011-06-12
        • 2011-12-28
        • 1970-01-01
        • 1970-01-01
        • 2012-07-06
        相关资源
        最近更新 更多