动态创建和销毁PictureBoxes

时间:2014-09-15 12:45:42

标签: c# list dynamic picturebox

我正在尝试制作一个简单的基于平铺的回合制战略游戏。

所以我用树木,河流等不同的东西制作了测试图。

我的下一步是创建我称之为Unit的类,它保存X-Y位置和其他数据。由于Unit将在游戏期间动态创建/销毁(在List>中),我还希望PictureBox包含根据需要创建/销毁的Unit tile-icon。

我希望能够点击PictureBox,该框将发出鼠标事件,该事件将检查哪个类连接到PictureBox并根据需要执行操作。

在C#中动态创建和销毁PictureBox?或者我应该制作PictureBox的网格?

1 个答案:

答案 0 :(得分:0)

我会走另一条路。创建一个PictureBox并在其中绘制Paint事件中的所有内容。通过地图的x和y坐标为可见切片执行嵌套循环,并使用Graphics.Draw命令绘制这些切片。绘制背景图块后,您可以循环显示单元列表并将其绘制在顶部。您可以在鼠标按下时进行简单的命中测试,以查看被点击的内容。

这将减少资源消耗,并且还可以让您以后做更好的动画和图形(想想精灵跨越瓷砖边界或大于单个物理图块的图块)。