与VB2012中的画线对角线

时间:2015-07-07 09:24:26

标签: vb.net gdi

我用这个简单的代码绘制一条对角线 - 但是这条线在我的表格中间结束... 为什么???

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles   Button1.Click
        g.DrawLine(stift, 0, 0, Me.Width, Me.Height)
     End Sub

1 个答案:

答案 0 :(得分:0)

这与你的例子中的g有关。图形对象似乎仅限于在调用CreateGraphics()时给出的尺寸内的图形。您可以按照@Keith建议设置断点并检查g.VisibleClipBounds.Height和.Width(与Me.Height和Me.Width相比)来确认这一点

您会看到Me.Height和Me.Width正在更改,但VisibleClipBounds属性不会更改。我尝试纠正使用各种 Clip 属性和Graphics对象的方法到目前为止还没有工作,除了处理g并重新创建另一个对CreateGraphics()的调用。所以使用你的样本:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles   Button1.Click
        g.Dispose()
        g = Me.CreateGraphics()
        g.DrawLine(stift, 0, 0, Me.Width, Me.Height)
End Sub

HTH,
埃里克