首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

关于GDI+中的矩形填充,矩形左上角起初坐标无法正确定位!

2013-10-07 
关于GDI+中的矩形填充,矩形左上角起始坐标无法正确定位!!为什么设置500,200的起始坐标就不能画出我想要的

关于GDI+中的矩形填充,矩形左上角起始坐标无法正确定位!!



为什么设置500,200的起始坐标就不能画出我想要的矩形呢?不解啊? gdi+ 图形
[解决办法]
这个跟语句写的位置有点关系,至于为何有如此关系,得去听微软解释,估计跟函数设计有关.
而与逻辑无关,把语句修改如下测试就知道:

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        
        Me.CreateGraphics().FillRectangle(New SolidBrush(Color.FromArgb(0, 255, 0)), New Rectangle(280, 200, 20, 50))
        Me.CreateGraphics().FillRectangle(New SolidBrush(Color.FromArgb(0, 255, 0)), New Rectangle(500, 200, 20, 50))
        Me.Width = 1024
        Me.Height = 500

    End Sub

End Class

透过以上实验,可以得知Me.CreateGraphics()先会获取原窗体的大小进行绘制,第二次才按指定大小进行绘制,以上代码点击2次按钮效果是不同的,原因明显可知.
至于代码优化问题,如果有重用的代码可优化提取出来.
[解决办法]
晕!

许多代码必须放到 Form_Load 中去执行的。提前去执行,当然就会取得错误的环境数据。这个希望你自己就能想明白。

热点排行