Farbe erkennen
-
hallo
ich wollte fragen wie man mit dem c++ builder die hintergrundfarbe erkennen kann (schwarz oder weiß)?Das zum Beispiel mit if abfragen.
danke
-
Die Hintergrundfarbe von Was?
-
von dem fenster (wenn ich zum beispiel ein image drin habe)
-
Die Farbe des Hintergrundes einer Form liefert dir die Eigenschaft TWinControl::Brush::Color. Also z.Bsp.
TColor col = form1->Brush->Color;
oder du kannst sowohl bei TForm als auch bei TImage mit TCanvas::Pixels arbeiten.
-
ich meinte mit einer koordinate (z.B. 600,500) und da dann die farbe.
-
Hast du dir mal TCanvas::Pixels in der Hilfe angeschaut?
-
sorry aber die hilfe geht bei mir nich..ich hab vista..des is der letzte schrott
Ich komme bis Canvas->Pixels
und was kommt dann?
-
Aus der Borland Hilfe (BCB6):
Die Eigenschaft Pixels gibt die Farbe der Pixel innerhalb des aktuellen Clipping-Rechtecks an.
__property TColor Pixels[int X][int Y] = {read=GetPixel, write=SetPixel};
Beschreibung
Mit einem Lesezugriff auf diese Eigenschaft können Sie ermitteln, welche Farbe die Zeichenfläche an einer bestimmten Stelle des aktuellen Clipping-Bereichs hat. Wenn sich die Position außerhalb des Clipping-Rechtecks befindet, liefert das Auslesen der Eigenschaft Pixels den Wert -1.
Ein Schreibzugriff auf Pixels ändert die Farbe eines einzelnen Pixel auf der Zeichenfläche. Sie können mit dieser Eigenschaft also gezielte Änderungen an einem Bild vornehmen. Außerdem können Sie mit Pixels die Farbe festlegen, die für die Methode FillRect verwendet werden soll.
Wenn der vorliegende Gerätekontext die Eigenschaft Pixels nicht unterstützt, gibt ein Lesezugriff den Wert -1 zurück. Die Zuweisung eines Wertes bleibt ohne Wirkung.
-
danke