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

VBA Access Discussion :

[VB-S et -A] Garder la main sur une application


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Août 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut [VB-S et -A] Garder la main sur une application
    Bonjour tout le monde,

    Je ne sais pas si je suis dans la bonne partie du forum, car je suis un peu paumé. Je dois programmer du VBA, et du VBscript il me semble, et je programme à partir d'un logiciel payant Test Partner (logiciel permettant de réaliser des test de non régression, il s'oriente principalement vers le controle d'IHM d'un logiciel).

    Mon problème est que je n'arrive pas à garder la main sur une application (ici, le softphone X-Lite). Une fois l'application lancé, impossible de demander de faire quoique ce soit, et ce parce qu'elle s'ouvre seulement dans le "system tray". Donc impossible de faire un truc du genre:
    => Window("X-Lite Window").Attach

    Voilà mon script principal:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Main()
         Run "Launch_XLITE"
         Sleep 3000, tpPauseMilliSeconds
         Run "Dialling"
    End Sub
    Launch_XLITE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub Main()
        Dim ID As Variant
        ID = Shell("""C:\Program Files\CounterPath\X-Lite\x-lite.exe""", vbMaximizedFocus)
    End Sub
    Dialling:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub Main()
      Window("X-Lite Window").Attach
      Window.Click 319, 263
    End Sub
    Merci d'avance pour vos suggestions

  2. #2
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Août 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut
    Pour ceux que ca intéresse, j'ai trouvé la solution à mon problème.

    Voilà le script que je lance pour récupérer l'application dans la barre des tâches:

    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
    23
    24
    25
    26
    27
    28
    Sub Main()
     
        ' Script pour reprendre la main sur la fenêtre X-Lite
        ' Au cas ou elle a été réduite dans la barre des tâches
     
        Dim heure_actuelle As String
        Dim name_items As Variant
        Dim nbr_items As Integer
     
        ' Retour bureau
        Window("Window").Attach
     
        ' Recupérer heure actuelle (hh:mm)
        heure_actuelle = Mid(Now, 11, 6)
     
        ' Pour chacun des items dans la barre des tâches
        nbr_items = ToolBar("Parent.Label=" & heure_actuelle & " Index=3").Count
        For i = 1 To nbr_items
            name_items = ToolBar("Parent.Label=" & heure_actuelle & " Index=3").GetItem(i)
            ' Test si X-Lite est dans la barre
            If InStr(name_items, "X-Lite") Then
                ToolBar("Parent.Label=" & heure_actuelle & " Index=3").Select (name_items)
            End If
        Next i
     
        ' On affiche X-Lite au premier plan
        Window("X-Lite Window_0001").Attach
    End Sub

  3. #3
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Août 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut
    Mon script est un peu trop gourmand en temps d'exécution (5 sec). Au moment, ou je parcours les items de la barre des tâches. Si vous connaissez un moyen plus rapide, ou un moyen d'alléger le code, n'hésitez pas à le poster

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Prendre la main sur une application .exe
    Par unlucky luke dans le forum VBA Access
    Réponses: 0
    Dernier message: 25/06/2014, 11h01
  2. Ouvrir une popup mais garder la main sur la fenêtre principale
    Par Devilju69 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/01/2014, 13h57
  3. Réponses: 1
    Dernier message: 22/10/2009, 12h51
  4. [MySQL] Garder "la main" sur un enregistrement après un INSERT
    Par pc.bertineau dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/05/2007, 11h07
  5. [PowerBuilder] Récupérer la main sur une fenêtre modale
    Par jpdar dans le forum Powerbuilder
    Réponses: 3
    Dernier message: 12/06/2006, 14h21

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