c++ - 用 C++ 在桌面上叠加图像

标签 c++ draw desktop layer

我正在尝试为我开发的程序制作一个有趣的教程,我希望箭头在教程的特定时间在屏幕上出现和消失。我已经在油漆上画了这些箭头(我可以用 png、jpg...几乎任何图像格式绘制它们),但我有想法如何让它们出现在屏幕上并在我需要时消失。

基本上,如果它们可以出现在屏幕上,就像出现在任何其他窗口的顶部一样,出现在最高层(只有鼠标本身能够越过它),那将是我理想的代码。打印屏幕是否包含图像并不重要,重要的是它可以在给出正确的代码时出现和消失。

任何帮助都会让我永远欠你的债 xD!

最佳答案

可能最简单的方法是创建一个始终位于顶部的透明和点击全屏窗口。然后,您可以使用 GDI(假设您以 Windows 为目标)在此窗口中的任何您喜欢的位置绘制箭头。

窗口可以通过使用实现透明和点击

WS_EX_LAYERED | WS_EX_TRANSPARENT

作为扩展窗口样式。

关于c++ - 用 C++ 在桌面上叠加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25233004/

相关文章:

objective-c - 画一个圆代表剩余时间

python - 除非我退出并返回,否则 Pygame 矩形不会出现

java 从 mongo db 打开文件(pdf、xsl 等...)

css - 移动 CSS 是唯一显示的 CSS……即使在桌面上也是如此

java - 在 ubuntu (linux) 上从 java 使用 Desktop.open() 打开一个路径

c++ - synergy 无法编译——对 `pthread_xxxx 的 undefined reference

C++ 类模板(带默认值)

ios - 如何使用 SKShapeNode 绘制一条线并使其成为物理体(启用碰撞)?

c++ - C++ 中的全局变量和局部变量

c++ - 删除指向指针列表的指针