简单的用API函数画图的问题
请问谁有用vb画正多边行和星形的原代码,求教,我想要用API函数哦,如果没有那么请看看我的画多边形的代码,有错,因为画出来的是……(下来看看就知道啦),请指出错误!
谢谢!
Option Explicit
Private Declare Function Polygon Lib "gdi32" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long
Private Declare Function Ellipse Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Type POINTAPI
X As Long
Y As Long
End Type
Dim flag As Boolean
Dim hdc1 As Long
Dim pos(0 To 10) As POINTAPI
Dim i As Integer
Dim nil As POINTAPI
Private Sub Form_Load()
flag = False
Me.ScaleMode = 3
Me.AutoRedraw = False
i = 0
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
flag = True
pos(i).X = X
pos(i).Y = Y
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If (flag) Then
Polygon Me.hdc, pos(i), 4
Ellipse Me.hdc, X, Y, X + 5, Y + 5
End If
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If (flag) Then
pos(i).X = X
pos(i).Y = Y
If (i >= 3) Then
Polygon Me.hdc, pos(i), 4
Ellipse Me.hdc, X, Y, X + 5, Y + 5
i = 0
End If
If (i < 3) Then
i = i + 1
Polygon Me.hdc, pos(i), 4
Ellipse Me.hdc, X, Y, X + 5, Y + 5
flag = False
End If
End If
End Sub