在十六进制网格中创建六边形按钮的最佳方法

时间:2014-09-25 20:04:24

标签: c++ winapi hexagonal-tiles

我正在研究一种生成六边形网格的工具,用户可以点击该网格来循环某些状态(Enemy,ally等)。到目前为止,我已经能够将多边形生成为多边形。

我是Windows编程和Win32 API的新手。我知道如何创建常规按钮,但处理我需要的最佳方法是什么?

想到的选项是:

  1. 制作十六进制的伪按钮。在存储十六进制对象的状态时,只需在用户点击它们时在每个十六进制上绘制文本。
  2. 使用CreateWindow制作实际的六边形按钮。我找到了一些如何制作不同形状按钮的例子,但我们并没有尝试过。
  3. 创建要循环的图像文件。
  4. 这样做的正确方法是什么?通过正确我的意思是最佳实践。

1 个答案:

答案 0 :(得分:0)

如果你已经画出六边形(听起来像你的那样),那么制作六边形按钮对你来说并没有多大帮助。您可以自己进行命中测试以确定单击了哪个伪按钮。这可以避免Windows管理许多您已拥有完整数据的小对象。在这些按钮上绘制文本至少与需要Windows一样快。