19/12/09 22:58
NickoMaiden
ho girovagato su google e il risultato è stato GetPixel() e CreateDIBSection().
voglio ottenere il colore di un pixel sullo schermo in tre variabili (R,G,B).
Qualcuno mi darebbe una dritta su come utilizzare queste funzioni dato che non ci ho capito nulla dai risultati di google?
(e soprattutto, perchè quando provo ad usarla mi da questo errore:
[Linker error] undefined reference to `GetPixel@12'
?
)
uso il compilatore bloodshed dev-c++
EDIT by HeDo: Siamo nella sezione C++, è inutile scriverlo nel titolo
Ultima modifica effettuata da HeDo 15/01/10 9:22
aaa
20/12/09 14:50
NickoMaiden
bene grazie, oggi che ho un po di tempo libero mi metto un po a studiarmi queste cose.
aaa
21/12/09 9:18
NickoMaiden
ci sono riuscito, ecco il codice sorgente:
per chi ha il compilatore dev c++ deve impostare il progetto come gui altrimenti da linker error
#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;
int main(int argc, char *argv[])
{
POINT pos;
GetCursorPos (&pos);
HDC hScreenDC = GetDC (NULL);
COLORREF rgb = GetPixel (hScreenDC, pos.x, pos.y);
int red = GetRValue (rgb);
int green = GetGValue (rgb);
int blue = GetBValue (rgb);
//siccome il progetto è impostato come gui non funzionano gli input/output su consolle
//quindi provvisoriamente ho risolto cosi
char buffer[255];
itoa (red,buffer,10);
MessageBox(NULL, buffer, "ROSSO", MB_OK);
itoa (green,buffer,10);
MessageBox(NULL, buffer, "VERDE", MB_OK);
itoa (blue,buffer,10);
MessageBox(NULL, buffer, "BLU", MB_OK);
system("PAUSE");
return EXIT_SUCCESS;
}
anche se a me è servito a poco perchè mi serviva per fare un pixel bot e il sistema di protezione se ne accorge e mi da sempre nero, cmq non mi arrendo: ho trovato delle sorgenti gia pronte che tramite le stesse funzioni fanno uno screenshot e si vede per bene, magari ce la faccio ad adattarlo a quello che mi serve
Ultima modifica effettuata da NickoMaiden 21/12/09 9:26
aaa