ClientToScreen/ScreenToClient
-
COLORREF PixelGetColor(int xpos,int ypos) {
HWND hWndxy = GetForegroundWindow();
ClientToScreen();
HDC hDC = GetDC(hWndxy);
COLORREF Farbe = GetPixel(hDC, xpos, ypos);
ReleaseDC(hWndxy,hDC);
return Farbe;
}hallo das ist meine funktion
aber die lest ja nur übern desktop aus
wie kann ich machen das er von den fenster die coords dann nimmt
zb wenn ichPixelGetColor(100,100);
dann gibt er mir die farbe von pos : 100,100 zurück aber wenn ich nun
100,100 von nen bestimmten fenster haben mag (das offen ist)
kann man das dann mit ClientToScreen oder ScreenToClient machen ?
und ein bsp bittemfG,
Help Me
-
hi,
em hast du dir ScreenToClient in der MSDN überhaupt mak angeguckt ?
Naja so sollte es funzen:
COLORREF PixelGetColor(int xpos,int ypos) { HWND hWndxy = GetForegroundWindow(); POINT ptDest = { xpos, ypos }; ScreenToClient(hWndxy, &ptDest); HDC hDC = GetDC(hWndxy); COLORREF Farbe = GetPixel(hDC, ptDest.x, ptDest.y); ReleaseDC(hWndxy,hDC); return Farbe; }
-
geht noch immer nicht
er nimmt immer noch die x/y coords vom desktop und nicht von offenen fenster
-
Help Me schrieb:
geht noch immer nicht
er nimmt immer noch die x/y coords vom desktop und nicht von offenen fensterMeinst du, das man ihm Client-Koordinaten übergibt, oder das du ihm Screen-Koordinaten gibst und er
diese autom. aufs akuelle (Foreground)-Fenster umrechnet ?
-
Screen-Koordinaten gibst und er
diese autom. aufs akuelle (Foreground)-Fenster umrechnet ?genau das mein ich
-
*sry for double post
wie könnte das dann funktionieren auch mit ScreenToClient ?
oder gibts da eigene funktion dafür ?
*könnte die jemand posten btw beispiel.