我正在处理包含两个表单的Windows窗体应用程序。一个人在点击其他人时隐藏起来。一次只能看到一个表单。 我已经禁用了它们的Win + D键。使用以下代码
ntPtr hprog = NativeMethods.FindWindowEx(NativeMethods.FindWindowEx(NativeMethods.FindWindow("Progman", "Program Manager"),
IntPtr.Zero, "SHELLDLL_DefView", ""),
IntPtr.Zero, "SysListView32", "FolderView");
NativeMethods.SetWindowLong(this.Handle, GWL_HWNDPARENT, hprog);
但是当我按下Win + D时桌面被禁用,要激活桌面,我需要再次按下Win + D.这两种形式都会发生这种情况。你能证明这个原因吗?无论窗体是打开还是关闭,我都需要桌面始终处于活动状态。这种情况发生在某些PC上,而不是在所有PC上。我正在使用Windows 7和Dot NEt 4.0。
答案 0 :(得分:1)
这可能不是你想养成的习惯。非常多的用户使用Windows密钥快捷方式,我并不仅仅意味着计算机的匮乏。我的妻子是一名护士,她使用了其中一些。
您正在尝试为使用您的应用的所有人更改Windows的默认行为,这只是为“锁定”系统创建本机应用时的一个好主意。如果环境不允许使用Windows密钥快捷方式,则可以更改它们。
试图强迫用户做事永远不是正确的想法。