Rubrik: Grafik & Zeichnen | 22.03.05 |
Polyline-Funktion Diese Funktion zeichnet eine oder mehrere Linien auf ein Device. | ||
Betriebssystem: Win95, Win98, WinNT 3.1, Win2000, WinME | Views: 10.393 |
Deklaration:
Declare Function Polyline Lib "gdi32.dll" ( _ ByVal hdc As Long, _ lpPoint As POINTAPI, _ ByVal nCount As Long) As Long
Beschreibung:
Diese Funktion zeichnet eine oder mehrere Linien auf ein Device.
Parameter:
hdc | Erwartet den Devicekontext des Gerätes, auf dem die Linien gezeichnet werden sollen. |
lpPoint | Erwartet ein Array von POINTAPI-Strukturen, wobei jede Struktur mit den Koordinaten eines Punktes gefüllt sein muss. Das erste Feld des Arrays enthält denStartpunkt; die Linien werden vom Startpunkt über alle weiteren Punkte bis hin zumletzten Punkt gezeichnet. |
nCount | Erwartet die Anzahl der im Array "lpPoint" enthaltenen Felder. |
Rückgabewert:
Ist die Funktion erfolgreich, so wird der Wert "1" zurückgegeben, andernfalls derWert "0".
Beispiel:
Private Declare Function Polyline Lib "gdi32.dll" ( _ ByVal hdc As Long, _ lpPoint As POINTAPI, _ ByVal nCount As Long) As Long Private Type POINTAPI x As Long y As Long End Type
' Zeichnen eines umgedrehten Dreiecks auf der gesamten Form Private Sub Form_Paint() Dim Retval As Long, Points(3) As POINTAPI ' Dreieckspunkte festlegen Me.ScaleMode = vbPixels With Points(0) .x = 10 .y = 10 End With With Points(1) .x = (Me.ScaleWidth - 20) / 2 .y = Me.ScaleHeight - 10 End With With Points(2) .x = Me.ScaleWidth - 10 .y = 10 End With With Points(3) .x = 10 .y = 10 End With ' Dreieck zeichnen Me.Cls Retval = Polyline(Me.hdc, Points(0), UBound(Points) + 1) End Sub
' Beim Ändern der Fenstergröße auch zeichnen Private Sub Form_Resize() Call Form_Paint End Sub