我想在屏幕中央画一个小点,以便在运行任何应用程序后都必须保留。在全屏模式下启动应用程序后,点应该保持不变。像死像素一样。
我已经在使用Windows 7的计算机上安装了Visual C ++。我有一些使用C ++的经验,但我从未在Windows操作系统下使用过图形。
如何在屏幕上画一个点?
答案 0 :(得分:5)
许多显卡都具有叠加功能,无论其他应用程序在其他图层中呈现什么,都可以在屏幕上设置最重要的显卡。
但这样做的方法将特定于视频卡型号和驱动程序。
或者,您可以尝试让代码在应用程序内部进行全屏渲染,找到渲染上下文,并在理想的时间绘制它。对于所有不同的图形API,仍然需要一堆变体。
Here是描述Steam尝试解决可移植性问题(有大量实现)以及如何利用它的人。
答案 1 :(得分:2)
我会创建一个正确定位的1x1像素(或任何你需要的大小)窗口,没有边框或标题栏,所有客户区域并适当地绘制它。使用WS_EX_TOPMOST
样式创建窗口非常重要。只要您的程序正在运行,只要没有其他窗口与该样式重叠,窗口就会可见。
我这是恶作剧。它在全屏OpenGL游戏(Quake III)上运行得非常好。我把它安装在朋友的机器上,这样它就会闪现LOSER这个词!在游戏过程中随机时间在屏幕中央的大字母中。
这在XP系统上运行得非常好。我想它应该可以在Windows 7上运行。