如何防止Windows 8虚拟键盘弹出?


14

我是Windows 8的不愿接受者。联想无法修复我购买的新Windows 7 Ultrabook,因此他们给我寄去了带触摸屏和Windows 8的Yoga笔记本电脑。

一旦购买了开始菜单替代品,我就不会太在意Windows 8的使用-它很丑陋,但大多数功能都与Windows 7一样好。我正在尝试做其他事情(嗯,几乎在任何时候,因为我几乎从不使用它来打字)。就像一个巨大的Clippy覆盖了一半的屏幕。

我还没有弄清楚是什么导致它弹出。似乎很随意,有时甚至在我拿不到转义键之前就消失了。有时在我打字时出现,有时当我的手不在键盘旁边时。有时一分钟几次,有时数小时。

有什么建议么?


需要截图以正确理解它。
2013年

Answers:


6

检查它是否是屏幕键盘:

在此处输入图片说明

或TabTip键盘

在此处输入图片说明

对于屏幕键盘,请转到控制面板->轻松访问->轻松访问中心->在没有鼠标或键盘的情况下使用计算机,然后取消选中“使用屏幕键盘”(如果选中)。另外,请检查Windows +调高音量键是否起作用。可以在“轻松访问中心”中将其设置为“屏幕键盘”->使触摸板更易于使用。

对于TabTip键盘,您可以通过从任务栏删除快捷方式(右键单击->工具栏->触摸键盘)将其删除,然后通过在cmd中键入以下内容来终止进程:

taskkill / F / IM TabTip *

(您也可以考虑将此命令放入批处理文件中,并在启动时执行该命令,因为Windows 8如果找到了触摸输入设备,则TabTip进程会重新启动,尽管它本身不会出现)


是的,它关闭了键盘。令人遗憾的是,任务栏图标仍然存在,似乎有很多问题,通常占据任务栏的50%。
马丁

11

我也有联想瑜伽。我也不得不处理这个。我知道,只是愚蠢。接下来是一个解释和一个解决方案。

为什么遇到此问题:

Windows 8.1的设计重点是触摸屏(在平板电脑上为“传统上”。)如果存在触摸屏,则Windows 8.1会假定没有键盘,因此,只要您在文本框中将手指拨到屏幕上,在键盘的持久性有机污染物(因为它认为你没有一个可用,所以你显然需要一种方式在那边文本框中键入,挖?)但是,如果你有一个敞篷机像你的瑜伽,它具有两个一触摸屏和物理键盘,Windows不知道;它只是认为您只有触摸屏,而没有键盘,因此即使您前面已经有功能完善的“ IRL”键盘,它也会继续将烦人的冗余屏幕键盘推向您的格栅。笨,是吗?哑巴,哑巴,哑巴!

为了使事情更加混乱,此行为仅设计用于METRO应用程序,而不设计用于台式机应用程序(某些例外情况,例如Google Chrome),这些应用程序具有Metro风格的触摸文本框,在屏幕上获取键盘弹出式自动启用为“功能”,您无法将其关闭)

通常,使用桌面应用程序时,如果触摸屏幕,您将不会得到强制的屏幕键盘,因此这就是为什么您可能在几个小时内一次都看不到奇怪的行为的原因-您正在使用桌面应用程序。

所有这些就是为什么突然弹出键盘对您来说是随机的。因为Windows 8.1的界面设计不一致。

那有意义吗?没有?欢迎使用Windows 8.1。

至于突然失踪时,屏幕键盘会离开,如果你触摸任何物理按键的突然。这是8.1的表达方式,“糟糕!抱歉,我没有在那儿看到那个物理键盘。” 除非它不记得两秒钟后的鸣叫。

我已经直接为此致电了Microsoft和Lenovo。他们拿?事实是,Microsoft在设计Windows 8.1时并未考虑可转换项目(例如Yoga)。如果您同时具有键盘和触摸屏,则将遇到这种现象。截至目前,还没有“修复”。

...所以有一个“为什么”。

至于“操作方法”,首先让我们看一下此帖子之前的建议解决方案:

通过停止服务来禁用键盘是可行的 -它会在公园外弹出屏幕键盘-但是Yoga既可以转换为平板电脑,也可以转换为笔记本电脑,届时您需要将屏幕键盘恢复原状-因此想到挖掘多个屏幕并向下滚动以发现每次只想将dam *计算机翻转到平板电脑中时,一个细小的设置就隐藏在其他细小的设置的长滚动列表中,这真是令人生气。

这是一种变通方法,可让您也结块并吃掉它:

我们将这样做,以便在未经您许可的情况下不会弹出屏幕键盘,但在您使用平板电脑模式时仍可使用屏幕键盘。更好的是,它并没有那么复杂...准备好了吗?

步骤1。转到超级按钮搜索(Win + C)

第2步。在“屏幕键盘”中输入。屏幕上会出现一个屏幕键盘,但外观与您习惯的有所不同。这有一个Win7风格的最小化按钮。

步骤#3 单击最小化按钮!新型的屏幕键盘将最小化桌面上的任务栏,而不会影响您的操作。

做完了

现在,别碰它!只需在任务栏中将其打开并最小化即可。

只要将新键盘最小化在任务栏中,当您在任何上下文中触摸或单击任何文本框时操作系统都会认为屏幕键盘已启用,除非它不会将其推回到您的面前。面对,它将保持整洁地最小化。您不会看到它。

同时,Yoga上的硬件键盘将继续正常工作。成功!

当您想再次以常规平板电脑模式使用计算机时,只需切换回桌面(Win + D)并关闭屏幕键盘即可,就像处理任何常规桌面应用程序一样。

Coolio。

因此,现在,当您将Yoga切换回平板电脑模式时,您仍可以在预期的上下文中定期访问该屏幕键盘。

(每次从平板电脑模式回到笔记本电脑模式时,您仍然必须重新接合该备用屏幕键盘,但是这样做只需要一秒钟。....我确实说这是一种解决方法,而不是固定。)

'最好,

  • JE

您描述的是正常的Windows行为。如果存在物理键盘,则不会显示虚拟触摸键盘。对我来说,似乎更像是瑜伽的一个特殊问题。
thewhiteambit 2014年

1
@thewhiteambit不,那不是真的。发生在其他非瑜伽平板电脑上的我。Windows根本不在乎是否存在物理键盘,并且一直不停地将屏幕键盘
推向

1
dunno,在我的表面上完美工作
thewhiteambit

4

禁用屏幕键盘上Windows 8的最快,最可靠的方法是停止启动Windows 8的服务并使其无法运行。

如何:禁用Windows屏幕键盘服务

  • 按Windows键+ R
  • 键入“ services.msc”,然后按Enter
  • 向下滚动到“触摸屏键盘和手写面板”
  • 您可以右键单击并单击“停止”,也可以双击并将其从“自动”启动更改为“手动”或“禁用”。

残障人士


请注意,这也会杀死屏幕上的文字。
MDT Guy

这对我来说是最好的答案,因为我在平板电脑模式中经常使用瑜伽,偶尔还是需要输入。谢谢!
基金莫妮卡的诉讼

1

还有另一个编程解决方案。

您可以创建一个TouchKeyboardHelper.cs类并声明系统消息以查找软键盘并强制将其关闭。

TouchKeyboardHelper.cs必须像:

using System.Runtime.InteropServices;
using Windows.Devices.Input;

namespace Application_Photo_GRDF.Common
{
public static class TouchKeyboardHelper
{
#region < Attributes >

private const int WM_SYSCOMMAND = 0x0112; // Flag to received/send messages to the system.
private const int SC_CLOSE = 0xF060; // Param to indicate we want to close a system window.

#endregion < Attributes >

#region < Properties >

public static bool KeyboardAttached
{
get { return IsKeyboardAttached(); }
}

#endregion < Properties >

#region < Methods >

[DllImport("user32.dll")]
private static extern int FindWindow(string lpClassName, string lpWindowName); // To obtain an active system window handler.

[DllImport("user32.dll")]
private static extern int SendMessage(int hWnd, uint Msg, int wParam, int lParam); // To send a message to the system.

/// <summary>
/// To detect if a real keyboard is attached to the dispositive.
/// </summary>
/// <returns></returns>
private static bool IsKeyboardAttached()
{
KeyboardCapabilities keyboardCapabilities = new KeyboardCapabilities(); // To obtain the properties for the real keyboard attached.
return keyboardCapabilities.KeyboardPresent != 0 ? true : false;
}

/// <summary>
/// To close the soft keyboard
/// </summary>
public static void CloseOnscreenKeyboard()
{
// Retrieve the handler of the window 
int iHandle = FindWindow("IPTIP_Main_Window", ""); // To find the soft keyboard window.
if (iHandle > 0)
{
SendMessage(iHandle, WM_SYSCOMMAND, SC_CLOSE, 0); // Send a close message to the soft keyboard window.
}
}

#endregion < Methods >
}
}

要在我们的代码中使用该帮助程序,请添加类似……

if (TouchKeyboardHelper.KeyboardAttached)
{
TouchKeyboardHelper.CloseOnscreenKeyboard();
}

1

通过执行以下操作,我摆脱了虚拟键盘弹出窗口:

  1. 按Windows键+ R
  2. 键入“ services.msc”,然后按Enter
  3. 向下滚动到“触摸屏键盘和手写面板”
  4. 您可以右键单击并单击“停止”,也可以双击并将其从“自动”启动更改为“手动”或“禁用”。

我右键单击并停止,然后再次执行该操作,然后双击并从下拉窗口中选择“禁用”,确保单击“应用”按钮,然后单击“确定”按钮,然后执行以下操作:

  1. 按Windows键+R。

  2. 键入control并按Enter打开控制面板。

  3. 在控制面板中键入轻松访问中心,然后将其打开。

  4. 单击“使用没有鼠标或键盘的计算机”。

  5. 如果选中了“使用屏幕键盘”,请取消选中它并保存更改。

同样,请确保单击“应用”按钮,然后单击“确定”。我首先选中了“使用没有鼠标或键盘的计算机”(以前未选中),然后立即再次取消选中它,然后单击“应用”和“确定”。这解决了我在Windows 8.1 ASUS平板电脑笔记本电脑上的问题。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.