drawpolygonメソッドのヘルプを探しています。何かがうまくいくように運がなかった。同じサイズの5つの三角形を並べて作成しようとしています。問題は、do-whileループを使用する必要があることです。私を助けるために時間を割いてくれてありがとう!
2 に答える
2
配列内の点を定義してから、ペンで書きます。
Dim blackPen As New Pen(Color.Black, 3)
Dim point1 As New Point(50, 50)
Dim point2 As New Point(100, 25)
Dim curvePoints As Point() = {point1, point2}
Me.CreateGraphics.DrawPolygon(blackPen, curvePoints)
それについてのMSDNドキュメントを見てください。
ループ内で何かを行うかどうかは関係ありませんが、方法によって異なります。これで問題が解決しない場合は、さらに役立つようにコードを投稿してください。
ループの例:
Do While i < 3
point1 As New Point(50 + i * 10, 50)
point2 As New Point(100 + i * 7, 25)
curvePoints = {point1, point2}
Me.CreateGraphics.DrawPolygon(blackPen, curvePoints)
i += 1
Loop
于 2013-02-27T08:37:26.390 に答える
0
私は実際にこの構造をテストしていませんが、それはすべて作業中のプロジェクトから切り取られています。私はそれがうまくいくと思います、そしてこのGDI+のもののいくつかは最初に拾うのに本当に汚れています。
Public Class Form1
Private subject As Image
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
If Not subject Is Nothing Then
Dim g As Graphics = e.Graphics
g.DrawImage(subject, New Point(1, 1))
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim tempBM As New Bitmap(subject)
tempBM.SetResolution(subject.HorizontalResolution, subject.VerticalResolution)
Using g As Graphics = Graphics.FromImage(tempBM)
g.DrawPolygon(OutlinePen, Polygon.GetPoints)
End Using
subject = tempBM
Invalidate()
End Sub
End Class
ああ、Polygonは私のコードではあなたが持っていないクラスです。ただし、Polygon.GetPointsを使用するポイントの配列に置き換えるだけです。
于 2013-02-27T18:38:31.960 に答える