Deklaration: Declare Function CreateRectRgn Lib "gdi32.dll" ( _ ByVal X1 As Long, _ ByVal Y1 As Long, _ ByVal X2 As Long, _ ByVal Y2 As Long) As Long Beschreibung: Parameter:
Rückgabewert: Beispiel: Private Declare Function CreateEllipticRgn Lib "gdi32.dll" ( _ ByVal X1 As Long, _ ByVal Y1 As Long, _ ByVal X2 As Long, _ ByVal Y2 As Long) As Long Private Declare Function DeleteObject Lib "gdi32.dll" ( _ ByVal hObject As Long) As Long Private Declare Function CreateRectRgn Lib "gdi32.dll" ( _ ByVal X1 As Long, _ ByVal Y1 As Long, _ ByVal X2 As Long, _ ByVal Y2 As Long) As Long Private Declare Function CombineRgn Lib "gdi32" ( _ ByVal hDestRgn As Long, _ ByVal hSrcRgn1 As Long, _ ByVal hSrcRgn2 As Long, _ ByVal nCombineMode As Long) As Long Private Declare Function FrameRgn Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal hRgn As Long, _ ByVal hBrush As Long, _ ByVal nWidth As Long, _ ByVal nHeight As Long) As Long Private Declare Function CreateHatchBrush Lib "gdi32.dll" ( _ ByVal nIndex As Long, _ ByVal crColor As Long) As Long Private Declare Function FillRgn Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal hRgn As Long, _ ByVal hBrush As Long) As Long Private Declare Function InvertRgn Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal hRgn As Long) As Long ' CreateHatchBrush nIndex-Konstanten Private Const HS_BDIAGONAL = 3 Private Const HS_CROSS = 4 Private Const HS_DIAGCROSS = 5 Private Const HS_FDIAGONAL = 2 Private Const HS_HORIZONTAL = 0 Private Const HS_VERTICAL = 1 Private hRgn1 As Long, hRgn2 As Long, hRgn3 As Long Private hBrush As Long ' 2 Regionen kombinieren und invertieren Private Sub Form_Load() Dim Retval As Long ' Autoredraw auf True stellen Me.AutoRedraw = True ' Brush erstellen hBrush = CreateHatchBrush(HS_DIAGCROSS, RGB(0, 255, 0)) ' Elliptische Region erstellen hRgn1 = CreateEllipticRgn(20, 30, 150, 110) ' bounding rectangle '(20,30)-(150,110) ' daneben eine rechteckige Region erstellen hRgn2 = CreateRectRgn(150, 30, 200, 110) ' Eine dritte "leere" Region erstellen hRgn3 = CreateRectRgn(0, 0, 0, 0) ' Kombinieren der beiden Regionen (Körper) zu einer Region CombineRgn hRgn3, hRgn1, hRgn2, 3 ' Kombinierte Region mit dem Brush füllen FillRgn Me.hdc, hRgn3, hBrush ' Invertieren der kombnierten Region InvertRgn Me.hdc, hRgn3 ' Rahmen mit dem Pen um die kombinierte Region zeichnen FrameRgn Me.hdc, hRgn3, hBrush, 5, 10 End Sub ' Ressourcen befreien Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Dim Retval As Long ' Löschen des Brushs DeleteObject hBrush ' Löschen der erstellten Regionen DeleteObject hRgn1 DeleteObject hRgn2 DeleteObject hRgn3 End Sub Diese Seite wurde bereits 9.209 mal aufgerufen. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Buchempfehlung Tipp des Monats Dezemeber 2024 Roland Wutzke MultiSort im ListView-Control Dieses Beispiel zeigt, wie sich verschiedene Sortierfunktionen für ein ListView Control realisieren lassen. Neu! sevCoolbar 3.0 Professionelle Toolbars im modernen Design! Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access |
||||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |