Hey.
Ich verwende Borland C++ Builder 6:
Ich habe auf einem Formular ein Panel mit der Farbe 255-0-255. (clFuchsia)
Im Formular ist diese Farbe mit: TransparentColorValue 255-0-255 erfasst.
Somit habe ich beim Start der Anwendung ein transparentes Feld und kann alles im Hintergrund der Anwendung sehen.
Ich möchte nun die Farbe eines Pixels in diesem Bereich ermitteln:
Wenn ich statt dem Handle des Panels einfach den ganzen Display (0) als Handle nehme,
kann ich zwar alle Pixel richtig auslesen, aber dadurch dauert es viel länger und die Position
zu bestimmen ist auch komplizierter als es sein soll.
Ich suche nun also nach einer Möglichkeit, die Farbe der Pixel im transparenten
Bereich zu scannen, ohne das er mir 255-0-255 ausgibt.
Ich verwende Borland C++ Builder 6:
Ich habe auf einem Formular ein Panel mit der Farbe 255-0-255. (clFuchsia)
Im Formular ist diese Farbe mit: TransparentColorValue 255-0-255 erfasst.
Somit habe ich beim Start der Anwendung ein transparentes Feld und kann alles im Hintergrund der Anwendung sehen.
Ich möchte nun die Farbe eines Pixels in diesem Bereich ermitteln:
Code:
HDC dc = GetDC(Panel1->Handle); COLORREF c = GetPixel(dc, x, y); int cR = GetRValue(c), cG = GetGValue(c), cB = GetBValue(c); // liefert immer 255-0-255
kann ich zwar alle Pixel richtig auslesen, aber dadurch dauert es viel länger und die Position
zu bestimmen ist auch komplizierter als es sein soll.
Ich suche nun also nach einer Möglichkeit, die Farbe der Pixel im transparenten
Bereich zu scannen, ohne das er mir 255-0-255 ausgibt.
Comment