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

VB 6 et antérieur Discussion :

Impossible récuperer fenetres enfants


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Par défaut Impossible récuperer fenetres enfants
    Bonjour,
    Je télécharge des fichiers.
    Sous vba mon code "tourne" sans problème.
    Transposer en vb6 je peux récupérer la fenêtre parent, mais pas celles des enfants, voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
            (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, _
            ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
     
    Dim hparent, hChild, i, j, Nblign, LCOUR, LDEP As Long

    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
        C = DateAdd("S", 60, Now)
        Do While C > Now
            hparent = FindWindow(vbNullString, "Téléchargement de fichiers")        'FENETRE PARENT
            If hparent <> 0 Then GoTo cok1
        Loop
    Stop    ' erreur telechargement
     
    cok1:
    Sleep 2000
     
        hChild = FindWindowEx(hparent, 0, 0, 0)
        While hChild
            wText = Space(256)
            j = SendMessage(hChild, WM_GETTEXT, 255, wText)
            wText = Left(wText, j)
            If wText = "En&registrer" Then GoTo cok2
     
            hChild = FindWindowEx(hparent, hChild, 0, 0)        ' get next sibling of hChild
        Wend
    Stop    'erreur bouton inexistant

    'erreur bouton inexistant

    Où est l'erreur?
    Merci

  2. #2
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Tu devrais afficher tous les wText dans ta fenêtre de debug pour voir ce que ta boucle trouve.

  3. #3
    Membre émérite
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Par défaut
    Bonjour,

    Dans la Msdn

    Type de données de la variable ; elle peut être de typeByte,Boolean,Integer,Long,Currency,Single,Double,Decimal (non pris en charge actuellement),Date,String (pour les chaînes de longueur variable), String * length (pour les chaînes de longueur fixe),Object,Variant, untype défini par l'utilisateur ou untype objet.
    Utilisez une locution As type distincte pour chaque variable que vous déclarez.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim hparent, hChild, i, j, Nblign, LCOUR, LDEP As Long
    1.D"abord commence déjà par définir convenablement tes variables.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim hparent As Long ,hChild As long,...
    2.Et refais un essai...

    A+

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Par défaut
    Merci de vos réponses
    Variables redéfinies, Toujours pareil.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Par défaut
    Bon jai trouvé:

    j'ai remplacé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    hChild = FindWindowEx(hparent, 0, 0, 0)
    Par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    hChild = FindWindowEx(hparent, 0, vbNullString, vbNullString)

Discussions similaires

  1. [Swing] fermer une fenetre enfant avec un bouton.
    Par TheSeb dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 23/11/2013, 12h42
  2. Réponses: 9
    Dernier message: 25/07/2006, 10h18
  3. comment fermer une fenetre enfant
    Par stefane1981 dans le forum MFC
    Réponses: 12
    Dernier message: 20/10/2005, 11h32
  4. wxWidgets : fenetres enfants...
    Par tavman dans le forum wxWidgets
    Réponses: 8
    Dernier message: 05/09/2005, 10h21
  5. [BPW]Raccourcis clavier dans une fenêtre enfant
    Par Alcatîz dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 18/02/2004, 20h07

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