-3

我想问是否有人可以为我提供一个 c++ 代码,在该代码中我可以在按下特定键时隐藏/显示鼠标指针。我发现几个只为 TURBO C++ 编写的代码,没有一个可以使用 dev 编译和运行c++ 甚至视觉 c++ ..

我尝试运行我在 Dev C++ 中找到的代码,但我只得到很多错误和不兼容性。

我还发现了几篇文章说我可以使用函数 ShowCursor 但它不起作用..

4

2 回答 2

5

事实上,隐藏光标可能是一项艰巨的任务,具体取决于您想要实现的目标。如果您正在使用 WinAPI 编写 GUI 应用程序,这非常容易。

只需调用 ShowCursor(false); 但是,在某些情况下,once 可能无法正常工作,因为 ShowCursor 函数仅“设置内部显示计数器”。光标一直显示,直到这个计数器小于 0(见msdn就可以了)。你可以尝试这样的事情:

while(ShowCursor(false)>=0);

以确保计数器低于 0。但是,如果您使用的是 Windows 7 等较新的 Windows 版本,这只会将光标隐藏在您的应用程序窗口中。在整个系统中隐藏光标可能会变得更加困难。

如果您正在编写控制台应用程序 ShowCursor 就我测试它不会显示任何效果。使用以下代码:

while(ShowCursor(false)>=0);    
std::cout<<ShowCursor(false)<<std::endl;
std::cout<<ShowCursor(true)<<std::endl;

我们可以看到,计数器肯定低于 0,但仍显示光标。到目前为止,我还没有想出解决方案。

于 2013-04-22T13:05:36.417 回答
0

如果您查看 SetCursor 函数的文档,将光标设置为 NULL 句柄(例如 SetCursor(NULL))会将光标从屏幕上移除。

于 2017-03-23T04:43:33.657 回答