网站建设资讯

NEWS

网站建设资讯

包含vbnet划线消失的词条

在VB NET中,在Form_Load中创建graphics类,并绘制直线,为什么执行程序后发现直线绘制不出来?

1. 创建一个Graphics对象实例。

创新互联公司-专业网站定制、快速模板网站建设、高性价比海南网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式海南网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖海南地区。费用合理售后完善,十多年实体公司更值得信赖。

绘制图形必须创建Graphics对象。如果是在窗体上绘图,要使用下列代码创建Graphics对象;

Dim MyGraphics As Graphics = Me.CreateGraphics

如果是在PictrueBox里绘图,要使用下列代码创建Graphics对象;

Dim MyGraphics As Graphics = PictureBox1.CreateGraphics

2. 定义一个Brush对象,用来填充图形(如果你需要填充的话)。

如果填充封闭曲线或者多边形,必须创建Brush对象(或者Brush类的继承类对象),用来确定填充的颜色。例如下面的代码,创建了一个填充红色的画刷对象。在最后的括号里,用Color结构指定的枚举值,确定画刷的颜色。限于篇幅有关Color结构这里不展开,可能在后续博文里介绍。

Dim RedBrush As New SolidBrush(Color.Red)

vb点虐 drawline画不出线

Form_load事件运行的时候,窗体里面的控件尚未初始化,以下代码经测试可行:

Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint

e.Graphics.DrawLine(Pens.Blue, 0, 0, 111, 111)

End Sub

在vb6.0的picturebox里面画了一条线,怎么过3秒之后清除掉~~~要求只清除这一条线

您是做游戏画面?

如果游戏简单的,看能否用Line控件代替画线,这样只要visible=false就擦除了,但如果有重叠问题,就要考虑把其他的线或坦克什么的都用控件代替。注意picturebox是否有autoredraw属性,有的话设置为true。有问题的话,把窗体的autoredraw也true,防止控件会擦除画上去的东西。

但是楼主要明白一个问题,那些绚丽多彩的游戏画面,不管2D还3D,都是一帧画面一帧画面的从头画一次的,每秒至少要画十几帧以上,3D游戏很关注一个fps参数,就是每秒画多少帧的意思,看您的电脑性能每秒能画多少帧画,如果画不出十几帧以上,感觉就卡了。

实际上游戏开发是先做游戏引擎,就是把这些复杂的纯绘图代码封装起来,做成一个工具软件,然后再把游戏里的物品图片放上去,设置动作、剧情就可以了。有兴趣可以百度一下“游戏开发引擎”,有一些通用的游戏引擎可以借用。

如果是从底层开始写代码,也不是用VB这些绘图语句能做的,太慢了,擦掉这条线都够你抓狂的。一般的,简单的画图可以用API的绘图函数,高档的就要用DirectX了。或者装个Visual Studio 点虐 2008,有个XNA,专门针对游戏编程的,但是我不知这个XNA是否只能支持C#语言。

补充声明一下,本人只是爱好者,不是专业人士,以上的回答是本人在自学过程中积累的一些肤浅了解,除了XNA很久前做过一点代码外,其他的都是理论没有实践。


新闻标题:包含vbnet划线消失的词条
文章来源:http://cdweb.net/article/ddehdip.html