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.549 mal aufgerufen. |
Neu! sevCommand 4.0 Professionelle Schaltflächen im modernen Design! Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. 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. |