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

MFC Discussion :

[Debutant] EnumWindows


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 14
    Par défaut [Debutant] EnumWindows
    Bonjour,

    Je voudrais remettre une fenetre au premier plan, le probleme c'est que je ne connais pas le nom complet de la fenetre.

    Voici mon ancien code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    HWND hFenetre = ::FindWindow(NULL, "Le nom de ma fenetre est XXXX");
    ::BringWindowToTop(hFenetre);
    Ca marche si je met le nom de le fenetre en dur "Le nom de ma fenetre est XXXX" mais je ne peux pas connaitre le nom complet, je sais juste que le nom de ma fenetre commence par "Le nom de ma fenetre est", le XXXX peut changer.

    Je dois pouvoir utiliser EnumWindows pour lister les fenetres et recuperer la fenetre dont le nom commence par "Le nom de ma fenetre est" mais je ne sais pas comment faire, je suis débutant de chez débutant !!! Si quelqu'un a un bout de code, je serai vraiment reconnaissant !

    Merci pour votre aide

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    tiens, tu peux faire un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    BOOL CALLBACK fonctionEnumerationFenetre(HWND hwnd, LPARAM lParam)
    {
    	int taille = GetWindowTextLength(hwnd);
    	if (taille)
    	{
    		char *texte = new char[taille+1];
    		char *c;
    		c=texte;
    		char comp[] = "Mon nom a comparer";
    		int siz = GetWindowText(hwnd,texte,taille+1);
    		if (strlen(texte)>strlen(comp))
    		{
    			texte = texte + siz - strlen(comp);
    			if (strcmp(texte,comp)==0)
    				// trouvé
    		}
    		delete c;
    	}
    	return 1;
    }
     
    EnumWindows(fonctionEnumerationFenetre,0);
    sachant que return 0 bloque la suite de l'énumération, tu peux le faire au besoin lorsque tu as trouvé

Discussions similaires

  1. [FLASH] pb debutant
    Par ultrakas dans le forum Flash
    Réponses: 2
    Dernier message: 05/06/2003, 00h48
  2. [debutant] Questions sur 1 futur projet
    Par cyrull22 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 28/04/2003, 21h49
  3. [debutant]Limiter le temps de saisi
    Par Nasky dans le forum C
    Réponses: 5
    Dernier message: 17/03/2003, 15h47
  4. [Debutant] Fichier war
    Par saispasfau dans le forum JBuilder
    Réponses: 2
    Dernier message: 17/03/2003, 15h32
  5. Réponses: 3
    Dernier message: 09/02/2003, 01h09

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