我正在为儿童编写一个全屏程序(使用 C# 和 WinForms),重要的是他们(用户)不能移动鼠标并最终进入 Windows 或桌面上的另一个程序——也就是说,一旦老师把这个程序放到屏幕上,孩子就必须呆在那里,老师只能使用密码退出程序)。
有没有办法做到这一点?
您需要按照以下步骤操作
从您的应用程序中删除边框
提供自定义关闭按钮并在关闭提示时输入密码
拦截键盘事件,使用户无法切换到其他窗口。
我知道的唯一方法是如果您处理所有默认 WindowMessages 并提供替代行为。
您可能必须为此更改 MessageLoop:
实现 Win32 消息循环并使用 P/Invoke 创建 Window 对象
这在另一种编程语言中可能会容易得多,例如 c++。