Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

Pixels van het scherm inlezen

Dr HenDre
8 antwoorden
  • Hoi,

    Ik ben bezig met een klein programmaatje dat een ander (oud) programma moet besturen. Dit andere programma heeft echter geen enkele mogelijkheid voor koppeling (ActiveX, COM, DDE), dus dacht ik het op te gaan lossen door pixels van 't beeld in te lezen (kleurtjes herkennen) en WM_MOUSEUP en WM_MOUSEDOWN messages terug te posten.

    Het enige probleem waar ik nu mee zit is: hoe lees ik nu de kleur van een pixel op 't scherm in. Ik heb inmiddels (met FindWindowEx en GetWindowRect) de posities van de pixels die ik wil weten (in screen coordinates) en nu wil ik daarvan alleen nog de kleur opvragen.

    - Phedny
  • Welke taal wil je gaan gebruiken?
  • [quote:a1c5e14f1f="Kuhlie"]Welke taal wil je gaan gebruiken?[/quote:a1c5e14f1f]Het stukje code dat ik nu heb is in C++. Maar hulp in andere talen is welkom, het is wellicht een stukje in een bruikbare richting ;)
  • ik heb hier wel een theorie over: (in vb)
    eerst dan soort screenshot van programma maken.. dan dus de coordinaten van pixel zoeken en dan de kleur die je wou: doe je met de api getpixel..
  • ik denk dat je alleen een screenshot kan maken als je weet in welke maat die gemaakt moet worden :)
  • hoe bedoel je maat? heb je niet nodig.. gewoon screenshot van het window maken.. daar dan de pixel uithalen.
  • nou kijk, als je vanuit je prog een screenshot wil maken kan je niet zomaar bij wijze van spreke Screenshot() doen, je moet breedte en lengte als argument meegeven. Je kan natuurlijk wel gewoon op printscreen raggen, maar dat werkt omdat windows weet met welke resolutie je werkt.
  • oh, maar als je met windows werkt dan vindt google: link

    dus: #include <windows.h> nodig en:
    int width = GetSystemMetrics(SM_CXSCREEN);
    int height = GetSystemMetrics(SM_CYSCREEN);

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.