FloodFill
![]() |
Diese API-Funktion ist nur noch aus Kompatibilitätsgründen enthalten und sollte laut Empfehlung von Microsoft von neuen Programmen nicht mehr verwendet werden. Stattdessen wird ExtFloodFill empfohlen. Jedoch funktioniert die Funktion auch in aktuellen Windows-Versionen noch einwandfrei. |
Die Funktion FloodFill dient dazu, eine geschlossene Figur (Polygonzug) mit der aktuellen Füllfarbe, bzw. der gewählten Brush zu füllen.
Private Declare Function FloodFill Lib "gdi32" ( _
ByVal hdc As Long, _ ByVal x As Long, _ ByVal y As Long, _ ByVal crColor As Long _ ) As Long
Parameter
hdc
- Erwartet einen DC. Dies kann entweder ein bestehender DC sein, beispielsweise der einer Picturebox, oder per CreateCompatibleDC erstellt worden sein.
x
- Die x-Koordinate, von welcher aus die Füllung beginnen soll.
y
- Die y-Koordinate, von welcher aus die Füllung beginnen soll.
crColor
- Erwartet einen Farbwert, der die farbliche Grenze für die Füllung angibt.
Rückgabe
Bei Erfolg wird ein Wert ungleich 0 zurückgegeben.
Beispiel
If FloodFill(Picture1.hdc, 100, 100, vbBlack) <> 0 Then
Picture1.Refresh
Else
Call MsgBox("Der angegebene Bereich konnte nicht gefüllt werden.", vbExclamation + vbOkOnly, "Fehler")
End if
Hinweise
Die FloodFill-Funktion benötigt für die Füllung eine sogenannte Brush. Diese muss vorher mittels CreateBrush erstellt worden sein. Bei Anwendung auf eine Picturebox oder Form, muss die Brush nicht mittels API-Methoden selbst erstellt werden. Es kann die im Control eingestellte Füllfarbe eingesetzt werden.
Verwandte Funktionen
CreateBrushIndirect - Erstellt ein Brushobjekt
CreatePen - Erstellt ein Penobjekt
CreatePenIndirect - Erstellt ein Penobjekt indirekt
ExtFloodFill - Erweiterte Füllmethode
FillPath - Füllt ein Pfadobjekt
FillRect - Füllt ein Rechteck
FillRgn - Füllt ein beispielsweise mittels CreateRectRgn erstelltes Region-Objekt.