IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Mettre une fenêtre en paramètre


Sujet :

C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut Mettre une fenêtre en paramètre
    Bonjour,
    J'utilise DevC++ pour programmer en C++ et j'ai déjà fais quelques recherches mais cela n'a pas abouti.
    En fait ce que je désire réaliser est la chose suivante : je désire pouvoir analyser ce qui apparaît sur une fenêtre. Je m'explique : si à la position de coordonnées x=124 et y=72 de ce que je vois sur la fenêtre il y a un pixel de telle couleur alors je veux exécuter une certaine action. Cependant je ne sais si cela est réalisable et si oui par quel moyen ??!?
    J'espère que j'ai été assez clair quant à ma question, n'hésitez pas à me demander des précisions.
    Merci d'avance
    Quentin

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Le C++ ne sait pas ce qu'est une fenêtre. Tu utilises l'API Windows?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    Au risque de paraître idiot c'est quoi l'API de Windows ? Si ça se trouve je l'utilises sans m'en rendre compte...

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    C'est l'ensemble de fonctions offertes par Windows.

    Pour ce qui est du fenêtrage, les fonctions sont CreateWindow(), RegisterClass(), GetMessage(), DefWindowProc(), etc.

    Bref, qu'écris-tu dans ton code pour dire "truc est une fenêtre" ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    J'utilise la SDL... est-ce suffisant comme réponse ?

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Oui, mais c'est aussi suffisant pour dire que je ne peux rien pour toi: Je ne connais pas SDL.

    Par contre, il me semble qu'il y a sur ce même site un sous-forum spécialisé pour cette bibliothèque.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    Peut-être que je me suis mal exprimé : ce que je désire faire c'est détecter un pixel d'une fenêtre d'un programme externe. Je m'explique : détecter un pixel d'une fenêtre de Mozilla par exemple... tu ne penses toujours pas pouvoir m'aider ?
    Merci d'avance
    Quentin

  8. #8
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Pas avec un programme SDL, en tout cas.

    De plus, ça m'a l'air extrêmement crade tout ça. Que cherches-tu à faire au juste?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    En fait je cherche à détecter les nombres qui apparaissent sur une interface de poker (nombre de jetons, montant du pot...)... simplement je ne pense pas qu'on puisse facilement récupérer ces nombres (il faudrait passer par le code du programme lui-même...) donc je cherche une autre solution. Si tu as des idées n'hésites pas :-)
    Merci d'avance

  10. #10
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    L'interface en question, elle ressemble plutôt à quoi?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24

  12. #12
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Houlà!

    Dans ce cas, même si tu réussis à faire une capture d'une autre application en utilisant SDL, bonne chance pour traiter l'image capturée...

    En tout cas, je te déconseille de tenter de lire les pixels un par un sur l'autre application. Si tu peux en faire une vraie capture et traiter l'image localement, tu devrais mieux t'en sortir...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    Et tu n'as pas d'autres idées pour réaliser ce que je désire faire ? Je peux très bien apprendre à utiliser autre chose que la SDL si nécessaire... ce projet me motive bien :-)
    Quentin

  14. #14
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    Je suppose que ce truc marche sous windows.

    Avec un peu de chance, le texte est récupérable. Spy++ (fourni avec visual studio) te fournira des infos là dessus.

    Si tu dois passer par une capture d'image, bon courage, surtout si le texte bouge en fonction du nombre de joueurs. Sinon, tu peux, une fois ta capture faite, isoler un bout d'image facilement, et lancer de l'ocr là-dessus.

    Mais je ne pense pas que sdl te soit utile. Tu auras plutôt besoin de :
    - l'api windows, si tu peux récupérer un handle de contrôle contenant le texte

    sinon :
    - l'api windows pour la capture d'écran
    - une lib de découpage d'image (l'api windows doit suffire à ton besoin)
    - une lib d'ocr

Discussions similaires

  1. Mettre une fenêtre en paramètre
    Par Coucougnou dans le forum SDL
    Réponses: 1
    Dernier message: 27/04/2009, 22h53
  2. Comment mettre une fenêtre au premier plan?
    Par damien99 dans le forum MFC
    Réponses: 11
    Dernier message: 30/08/2006, 11h37
  3. Mettre une fenêtre au premier plan
    Par Riko dans le forum Delphi
    Réponses: 4
    Dernier message: 20/06/2006, 19h30
  4. [MFC] mettre une fenêtre en 1er plan
    Par bigboomshakala dans le forum MFC
    Réponses: 4
    Dernier message: 14/05/2004, 16h39
  5. [API Windows] Mettre une fenêtre à jour
    Par Zazeglu dans le forum Autres éditeurs
    Réponses: 7
    Dernier message: 22/01/2004, 15h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo