Deklaration: Declare Function ExtFloodFill Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByValnXStart As Long, _ ByVal nYStart As Long, _ ByVal crColor As Long, _ ByVal fuFillType As Long) As Long
Const FLOODFILLBORDER = 0 ' Füllt von der angegebenen Position bis zu der angegebenen Farbe "crColor" mit dem aktuell ' gewählten Brush. Diese Methode füllt keine Bereiche, die mit "crColor" umschlossen sind. Const FLOODFILLSURFACE = 1 ' Überschreibt die Farbe "crColor" mit dem aktuell gewählten Brush
Private Declare Function CreateSolidBrush Lib "gdi32.dll" ( _ ByVal crColor As Long) As Long Private Declare Function DeleteObject Lib "gdi32.dll" (ByVal hObject As Long) As Long Private Declare Function ExtFloodFill Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal nXStart As Long, _ ByVal nYStart As Long, _ ByVal crColor As Long, _ ByVal fuFillType As Long) As Long Private Declare Function SelectObject Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal hObject As Long) As Long Private Declare Function RoundRect Lib "gdi32.dll" ( _ ByVal hdc As Long, _ ByVal nLeftRect As Long, _ ByVal nTopRect As Long, _ ByVal nRightRect As Long, _ ByVal nBottomRect As Long, _ ByVal nWidth As Long, _ ByVal nHeight As Long) As Long Private Const FLOODFILLBORDER = 0 ' Füllt von der angegebenen Position bis zu der ' angegebenen Farbe "crColor" mit dem aktuell gewählten Brush. Diese Methode füllt ' keine Bereiche, die mit "crColor" umschlossen sind. Private Const FLOODFILLSURFACE = 1 ' Überschreibt die Farbe "crColor" mit dem ' aktuell gewähltem Brush ' Form.AutoredDraw sollte True sein, damit der Fensterinhalt besser angezeigt wird. Private Sub Form_Resize() Dim RetVal As Long, hBrush As Long, hOldBrush As Long, RndCol As Long On Error Resume Next ' Bei einem Minimieren-Ereignis tritt sonst ein Fehler auf ' Inhalt der Form löschen Me.Cls ' Rechteck auf der Form zeichnen RetVal = RoundRect(Me.hdc, Me.ScaleWidth / 3, Me.ScaleHeight / 3, _ Me.ScaleWidth / 3 * 2, Me.ScaleHeight / 3 * 2, 20, 20) ' Brush mit zufälliger Farbe erstellen Randomize Timer ' Zufallszahlen neu berechnen RndCol = RGB(CInt(Rnd() * 255 + 1), CInt(Rnd() * 255 + 1), CInt(Rnd() * 255 + 1)) hBrush = CreateSolidBrush(RndCol) ' Brush zuweisen und alten Brush zwischenspeichern hOldBrush = SelectObject(Me.hdc, hBrush) ' den inneren Bereich des Rechtecks mit dem Brush der Form füllen RetVal = ExtFloodFill(Me.hdc, Me.ScaleWidth / 2, Me.ScaleHeight / 2, vbBlack, FLOODFILLBORDER) ' den Orginal-Brush wiederherstellen RetVal = SelectObject(Me.hdc, hOldBrush) ' den angelegten Brush zerstören DeleteObject hBrush End Sub Diese Seite wurde bereits 9.560 mal aufgerufen. |
sevWizard für VB5/6 Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Buchempfehlung Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||||||
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. |