RGB Auslese gibt falsch aus



  • Hi folgendes Problem warum wird mir hier immer 255 255 255 ausgegeben?
    Danke im Voraus

    void __fastcall TForm1::Timer1Timer(TObject *Sender)
    {
      POINT p;
    
    GetCursorPos(&p);  //x und y Koordinaten von Maus auslesen
    
    int x;
    int y;
    x = p.x;
    y = p.y;
    Label1->Caption = x;
    Label2->Caption = y;   //x und y Anzeigen lassen
    
    int rot,gruen,blau;
    	char colour[9];
    	COLORREF rgb;
    	HDC test;
    int r;
    int g;
    int b;
    	rgb=GetPixel(test,x,y);
         r = GetRValue (rgb);
         g = GetGValue (rgb);
         b = GetBValue (rgb);
    
    Label3->Caption = r;        //Und den Pixel in RGB anzeigen lassen
    Label4->Caption = g;
    Label5->Caption = b;
    }
    


  • hopala falsches forum 😛



  • Hallo

    Zunächst einmal wird test kein gültiger Wert zugewiesen, was aber notwendig ist.

    HDC test;
    ...
    rgb=GetPixel(test,x,y);

    Wenn du den Pixel eines Forms aus deinem eigenen Programm willst, warum benutzt du dann nicht Canvas?

    bis bald
    akari



  • Ich hab gerade n schwachen moment was muss ich mit test tun damit es gültig wird?



  • aso
    test = GetWindowDC(0);

    Google 2 Win^^

    Danke akari


Log in to reply