c++ - 如何在 Windows C++ CLR 中跟踪数千个绘制的形状

标签 c++ windows controls panel paint

我想在面板上绘制可能有数千个形状,并且能够在我将鼠标悬停或单击它们时识别它们。执行此操作的最佳方法是什么?

我的猜测是我必须在表格中有一些形状区域。当我将鼠标悬停在页面上时,还有一些巧妙的方法来查找匹配项。似乎是计算密集型的。有什么方法可以提供帮助吗?

最佳答案

当您在面板中绘制时,还将形状绘制到不显示的位图中,并使用形状 ID 作为颜色。当您需要查找形状时,只需检查位图中适当坐标处的像素即可。确保在绘制位图时关闭任何线条平滑或抗锯齿!

关于c++ - 如何在 Windows C++ CLR 中跟踪数千个绘制的形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4156288/

相关文章:

c++ - 在 C++ 中查找不适用于特定测试用例的最长子字符串

c++ - 在 Visual Studio 的 clang 中启用 C++14

c++ - 格式错误的静态转换解释

c# - 如何恢复未正确释放的 COM 对象?

windows - 穷人在 Windows 7 中使用作业调度程序远程执行作业

ruby-on-rails - Rails 删除某些路线

c#如何使用图形路径制作平滑的圆弧区域

c++ - 重载可变模板成员函数和可变模板函数

windows - 使用 Autohotkey 将 capslock 键重新映射为修饰键 ctrl+shift+alt

c# - 在单独的面板中配对单选按钮