草庐IT

机械键盘

全部标签

c# - C#中使用按钮调用屏幕键盘

我正在使用C#创建一个Windows应用程序,点击GUI上的按钮时,应该会显示屏幕键盘。如有任何帮助,将不胜感激。谢谢。此外,由于我主要在我的应用程序的其余部分使用EmguCv库,我们可以简单地使用它来调用屏幕键盘吗? 最佳答案 在C#中,您可以简单地编写以下代码行来调用Windows自带的屏幕键盘应用程序:System.Diagnostics.Process.Start("osk.exe");您可以找到更多帮助here. 关于c#-C#中使用按钮调用屏幕键盘,我们在StackOverf

c# - Windows 8 - 如何关闭触摸键盘?

我正在使用C#开发适用于Windows8的应用程序,一件非常烦人的事情是触摸键盘有时会停留在屏幕上,即使所有文本框都已失去焦点。我读了文章keyboarddismissallogicwhitepaper,这解释了当从一个控件切换到另一个控件时,即使控件可能不接受键盘输入,键盘也可以保持打开状态。这就是我的情况,因为我的所有内容都托管在GridView或ListView中。当用户点击屏幕上的任何项目时,点击将落在这些控件上。这很烦人,因为键盘占据了半个屏幕,而且无法关闭键盘。我试过将文本框设置为禁用,但没有效果。移除键盘的唯一方法是将焦点设置在按钮上,这非常hacky。我想我需要用“Au

c# - 更改其他进程的键盘布局

我正在用C#编写一个在后台运行的程序,它允许用户使用热键在事件窗口中切换键盘布局。(Windows只支持CTRL+SHIFT和ALT+SHIFT)我正在使用RegisterHotKey来捕捉热键,它工作正常。问题是我找不到任何API来更改聚焦窗口的键盘布局。ActivateKeyboardLayout和LoadKeyboardLayout只能改变调用线程的键盘布局。有谁知道如何更改不同线程的键盘布局(语言栏的方式)? 最佳答案 PostMessage(handle,WM_INPUTLANGCHANGEREQUEST,0,LoadKe

c# - XNA - 键盘文本输入

好的,基本上我希望能够检索键盘文本。就像在文本字段中输入文本之类的。我只是在为Windows编写游戏。我忽略了使用Guide.BeginShowKeyboardInput,因为它打破了独立游戏的感觉,而且Guide总是显示XBOX按钮这一事实对我来说也不合适。是的,这是最简单的方法,但我不喜欢它。接下来我尝试使用System.Windows.Forms.NativeWindow。我创建了一个继承自它的类,并将游戏窗口句柄传递给它,实现了WndProc函数以捕获WM_CHAR(或WM_KEYDOWN),尽管WndProc被调用以获取其他消息,WM_CHAR和WM_KEYDOWN从未这样做

c# - 捕获表单外的鼠标/键盘事件(在后台运行的应用程序)

我有一个在后台运行的应用程序(最小化/任务栏)。我需要能够检测鼠标事件(点击、移动)以及键盘事件。考虑到我的窗口没有“聚焦”的限制,最好的方法是什么? 最佳答案 看看这个图书馆globalmousekeyhook.它是100%托管的c#代码,用于安装全局鼠标和键盘Hook。它将低级Hook包装到常见的Windows窗体键盘和鼠标事件中。 关于c#-捕获表单外的鼠标/键盘事件(在后台运行的应用程序),我们在StackOverflow上找到一个类似的问题: htt

c# - 在键盘事件中使用 CancellationToken 调用 Task.Delay 时出现 TaskCanceledException

我正在尝试延迟从WinRT中的键盘事件调用的方法(示例中的SubmitQuery())的处理,直到一段时间内(在本例中为500毫秒)没有进一步的事件。我只希望在我认为用户已完成输入时运行SubmitQuery()。使用下面的代码,当Task.Delay(500,cancellationToken.Token)时,我不断收到System.Threading.Tasks.TaskCanceledException;叫做。请问我做错了什么?CancellationTokenSourcecancellationToken=newCancellationTokenSource();private

c# - 在 DirectInput 应用程序中使用 SendInput API 模拟键盘

我正在尝试为自定义游戏Controller应用程序模拟键盘命令。因为我需要在DirectInput环境中模拟命令,所以大多数常用方法都不起作用。我知道使用Hook100%有效,但我正在努力寻找更简单的实现方式。我进行了大量搜索,发现通过将SendInputAPI与扫描码一起使用而不是虚拟键应该可以工作,但它似乎表现得像键的“粘着”。我已经发送了KEYDOWN和KEYUP事件,但是当我尝试在DirectInput环境中发送消息时,游戏的行为就像按键被按住一样。例如,如果我模拟一个“W”按键并在第一人称射击游戏中将该键映射到“向前移动”Action,一旦我进入游戏,下面的函数将导致角色向前

c# - Windows 应用商店应用程序中的页面全局键盘事件

我正在开发一个游戏,一个基于WPF并用C#编写的Windows应用商店应用程序。当玩家按下Esc键时,我想暂停游戏并显示一个菜单(继续、退出等)。听起来很简单。遗憾的是,事实并非如此。游戏在Windows.UI.Xaml.Controls.Page中进行,主要由Canvas中的数百个Shape组成,但没有单个Button、TextBox或任何其他支持键盘交互的东西。唯一的交互是点击或点击形状。我需要为整个页面全局捕获键盘事件,无论哪个元素具有焦点,或者是否有任何焦点等等。只要按下Esc键,就必须触发一个事件。我尝试过的:使用事件Page.KeyDown或覆盖Page.OnKeyDown

c# - 在 Windows Phone 中打开纯数字键盘?

如何设置键盘以数字模式打开或直接打开一个特殊的数字键盘(如在android中)???我的目标是避免用户在输入可能只是数值的值之前每次都按下小按钮来切换字母和数字。我有一个用户需要编辑的文本框。谢谢!!!! 最佳答案 将InputScope设置为Number。XAMLC#InputScopescope=newInputScope();InputScopeNamename=newInputScopeName();name.NameValue=InputScopeNameValue.Number;scope.Names.Add(name)

c# - 无法从 Win7 x64 上的 32 位进程启动屏幕键盘 (osk.exe)

90%的时间我无法从Win7x64上的32位进程启动osk.exe。最初代码只是使用:Process.Launch("osk.exe");由于目录虚拟化,这在x64上不起作用。我认为这不是问题,我将禁用虚拟化,启动应用程序,然后再次启用它,我认为是正确的做事方式。我还添加了一些代码以在键盘最小化时恢复键盘(工作正常)-代码(在示例WPF应用程序中)现在如下所示:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Windows;usingSystem.Wind