gpt4 book ai didi

c# - 在图片框上绘制 vs 直接在表单上绘制

转载 作者:行者123 更新时间:2023-11-30 17:51:38 25 4
gpt4 key购买 nike

我正在使用 C# 创建轻量级 GDI+ 游戏引擎。我读过一些使用图片框控件作为创建游戏引擎时绘制的图形表面的书籍。然而,在网上做了一些研究后,似乎使用图片框控件不是我应该做的。这是真的吗?如果是,为什么?

最佳答案

您不需要任何控件,只需直接在表单或启用了 DoubleBufferedPanel 上绘制即可。好多了。您必须创建自己的对象,以便我们可以计算它们的 Region,我们将使用它们的 Region 将它们填充到表单/面板上。您必须处理表单/面板的事件 MouseMoveMouseDownMouseUp。另一个问题是如何用你的objects hittest你的鼠标,这样我们就可以根据用户的行为来控制对象。 Region 对象的 IsVisible 是一个很有用的方法。

我们不应该在这里使用任何控件进行绘图的原因是我们需要一些对象之间重叠的Transparent效果,使用winforms控件不能帮助您轻松实现,如果不是说不可能,就算能做到,效果也很差。所以只需在同一张 Canvas 上绘制所有内容。您还应该尝试在 Image 上绘制,然后在您的 form/panel 上绘制该 Image 或实现您自己的 Double 或 triple缓冲。有很多事情要做,但我希望你对我的回答有一些重要的注释,并选择正确的方向。

关于c# - 在图片框上绘制 vs 直接在表单上绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19186687/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com