Bonjour à tous ,
Je cherche à utiliser la fonction trouver fenêtre mais dans une zone bien définie cela est-il possible? je n'ai rien trouvé là-dessus merci pour votre aide
Trouver fenêtre dans une zone spécifique
Re: Trouver fenêtre dans une zone spécifique
Désolé j'ai oublié de préciser que j'aimerais faire cette recherche de fenêtre dans une zone spécifique par class et non pas par le titre de la fenêtre merci beaucoup.
Re: Trouver fenêtre dans une zone spécifique
Bonjour,
Voir https://wiki.actiona.tools/doku.php?id= ... indow#find
C'est assez riche en paramètres.
Je n'ai pas eu à utiliser "ClassName"
Par contre, j'ai du chercher des fenêtres pour lesquelles je n'avais qu'une partie du nom,
exemple , créer une action code où l'on cherche une page dont le nom contient "azerty" :
Voir https://wiki.actiona.tools/doku.php?id= ... indow#find
C'est assez riche en paramètres.
Je n'ai pas eu à utiliser "ClassName"
Par contre, j'ai du chercher des fenêtres pour lesquelles je n'avais qu'une partie du nom,
exemple , créer une action code où l'on cherche une page dont le nom contient "azerty" :
Code: Select all
nom_page_a_trouver= "*azerty*";
var windows = Window.find({
title:nom_page_a_trouver,
titleMode: Window.Wildcard
});
if (windows.length==0){
Console.print(" Page pas trouvée : " + nom_page_a_trouver );
Execution.stop();
};
my_fenetre=windows[0];
//Console.print(my_fenetre)
my_fenetre.setForeground();
Re: Trouver fenêtre dans une zone spécifique
Merci pour votre réponse François, effectivement il y a pas mal de possibilités qui devrait m'aider, je vais essayer ça en rentrant.
Par contre il n'est pas possible de faire la recherche de la fenêtre dans une zone bien spécifique de mon écran ?
Par contre il n'est pas possible de faire la recherche de la fenêtre dans une zone bien spécifique de mon écran ?
Re: Trouver fenêtre dans une zone spécifique
Bonjour,
A l'adresse indiquée hier, il y a un paramètre intéressant pour ce que vous voulez faire : rect().
on ne garde que la fenetre ayant un rect() correspondant à ce qu'on attend.
(Voire les fenetres si besoin)
Exemple : ici je veux mettre en 1er plan la fenetre
avec
... a condition que le nom de cette fenetre contienne Notepad :
A l'adresse indiquée hier, il y a un paramètre intéressant pour ce que vous voulez faire : rect().
on ne garde que la fenetre ayant un rect() correspondant à ce qu'on attend.
(Voire les fenetres si besoin)
Exemple : ici je veux mettre en 1er plan la fenetre
avec
Code: Select all
x_gauche_window = 655;
y_gauche_window =160
largeur_window =631;
hauteur_window = 289;
Code: Select all
nom_page_a_trouver= "*Notepad*";
var windows = Window.find({
title:nom_page_a_trouver,
titleMode: Window.Wildcard
});
if (windows.length==0){
Console.print(" Page pas trouvée : " + nom_page_a_trouver );
Execution.stop();
};
// a adapter suivant la fenetre
x_gauche_window = 655;
y_gauche_window =160
largeur_window =631;
hauteur_window = 289;
// FIN a adapter suivant la fenetre
trouve = 0;
for(i=0;i<windows.length;i=i+1){
fenetre=windows[i];
Console.print(fenetre.rect()); // permet de voir x, y ,larg et hauteur de la fenetre "trouvée"
if ( fenetre.rect().x ==x_gauche_window && fenetre.rect().y == y_gauche_window && fenetre.rect().width == largeur_window && fenetre.rect().height == hauteur_window ){
trouve =1;
Console.print(" Page trouvée dans zone attendue" );
break; // si trouvé, on sort de la boucle
} // fin if
} // fin for
if (trouve ==0 ) {
Console.print(" Page NON trouvée dans zone attendue" );
Execution.stop()
} // fin if
fenetre.setForeground();