[R] Résolution d'écran | Souris

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Verrouillé
Avatar du membre
cbourree
Niveau 5
Niveau 5
Messages : 104
Enregistré le : sam. 05 févr. 2011 18:07
Localisation : Lyon
Status : Hors ligne

[R] Résolution d'écran | Souris

#1

Message par cbourree »

Voila j'apprend Autoit grâce à des tutoriels que je trouve (il y en a d’ailleurs très peu) et j'ai un problème.
Mon script ne comporte que des MousClik et PixelSearch. Mais beaucoup de MousClik on des données fixes. Et donc ne marche pas celons la résolution d'écran.
Ma question est donc comment faire pour que sa marche ?
Si non, est-ce qu'il y a une résolution commnue a tous les ordinateur ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#2

Message par Tlem »

Je serais tenté de répondre à votre question par 640x480 bien que avec les PC d'aujourd'hui 800x600 semble la résolution la plus basse possible.
Mais j'avoue que c'est surement dur dur pour vous. ;)

En ce qui concerne les MouseClic et PixelSearch, malheureusement vous êtes totalement tributaire de la résolution du client.
Donc la seule et unique solution à votre disposition, est le calcul entre les coordonnées d'un point et la résolution en cours.
Soit vous testez toutes les résolutions, soit vous prenez la résolution en cours et appliquez une règles d'agrandissement par rapport à ce que vous cherchez. ;)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#3

Message par sksbir »

En fait, utiliser mouseclic et pixelsearch est une démarche désespérée, quand il n'y a pas d'autres possibilités.

Par exemple, pour interagir de façon plus fiable avec une page chargée dans Internet Explorer, on peut utiliser la bibliothèque IE.au3
On peut aussi noter les raccourcis claviers et simuler ceux-ci avec send.
Pour rendre une installation autonome ( c'est à dire ne plus demander à l'utilisateur d'intervenir, et éviter de programmer une usine à gaz avec mouseclic ), on peut utiliser des options au lancement du programme d'installation.


bref, il existe d'autres solutions, mais ça dépend de ce qu'on veut faire au juste...

Pour les tutoriels, il y a ça : http://www.siteduzero.com/tutoriel-3-22 ... utoit.html
Dixit
Niveau 2
Niveau 2
Messages : 17
Enregistré le : mer. 16 mars 2011 13:14
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#4

Message par Dixit »

Forcer le redimensionnement et la position des fenêtres avec lesquelles tu souhaite interagir et alors
utiliser des constantes dans les coordonnées qqsoit la machine avec WinMove (Nom de fenêtre,X,Y,Largeur,Hauteur). Dimensions en pixels.

En créant un repère à partir de la position de la fenêtre, l'utilisateur pourra bouger la fenêtre sans bouleverser quoi que se soit. Il faut faire en sorte de réactualiser la position dans le programme.

Si tu veux en plus que l'utilisateur puisse redimensionner la fenêtre à sa guise, ca doit toujours être possible en utilisant plus des constantes mais des rapports proportionnels entre position et dimension. X/Largeur et Y/Hauteur
Avatar du membre
cbourree
Niveau 5
Niveau 5
Messages : 104
Enregistré le : sam. 05 févr. 2011 18:07
Localisation : Lyon
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#5

Message par cbourree »

En effet je suis réellement désespérer. Car c'est pour un jeu (ce n'est pas un bot) donc je ne peux pas cliquer sur oui ou non ...
Donc la commande pour redimensionner la fenêtre me parait bien mais il faut m'expliquer 2, 3 trucs :
Quand on change la résolution, où passe les pixels ? 640,800=> 500,600 à moins que se ne soit pas des Px.
Est ce que c'est proportionnel ? => je prend une mesure par exemple 100px (x)et je dit bouger 100% de x (soi pos + x)avec une résolution de 600x800 et donc 200% avec 1200x1600 ????

Est ce que un objet a et objet b serrons espacé du même nombre de pixels ?

Si non : Est ce qu'on peut redimensionner une fenêtre ?( en gros changer sa résolution)


Rahh !!!! Je n'y comprend rien aux résolutions, des petites explications SVP
Dixit
Niveau 2
Niveau 2
Messages : 17
Enregistré le : mer. 16 mars 2011 13:14
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#6

Message par Dixit »

>> Si non : Est ce qu'on peut redimensionner une fenêtre ?( en gros changer sa résolution)

Oui, avec la commande que j'ai donné au dessus. Tu impose les pixels de la fenêtre, donc sa résolution. Où passent les pixels lors d'un changement de résolution? Il disparaissent ou apparaissent... Sa rend plus beau ou moins beau mais peu importe si c'est la position d'un bouton qui t'intéresse. Tu prend Autoit Windows Info qui est donné avec Autoit, tu fais "fenêtre" et "souris" pour avoir toute les infos. Tu prend les coordonnées du bouton, tu les rentre dans ton programme et au moment voulu tu fais un mouseclik sur la position.

Mais déjà cernons mieux le problème, tu veux que l'utilisateur puisse bouger la fenêtre lors du programme? Ou alors elle peut rester fixe? (Ce qui rend les choses bien plus simple). Tu veux que ton programme s'adapte à toute les résolutions du jeu?
Avatar du membre
cbourree
Niveau 5
Niveau 5
Messages : 104
Enregistré le : sam. 05 févr. 2011 18:07
Localisation : Lyon
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#7

Message par cbourree »

Donc déjà je pense que la fenêtre peut rester fixe.
Je veux que par exemple quand je me fasse attaquer sa clique sur annuler et que sa bip.
Donc sur ma résolution je regarde si j'ai le message qui c'est afficher :
$message = PixelGetColor(200,252)
If $message = 0x... Then anuler()
Ma fenêtre ce centre au milieu mais ne fait pas les mêmes dimensions selon la résolution.
Donc je fais un MouseMove("jeu",0,0,300,400) et après, tout marche comme sur des roulettes ?
Je croie que c'est la bonne solution, si sa ne marche je croie que je vais obliger de le faire dans toutes les résolutions de mes amis. et je détecte avec @largeurecran et @hauteurecran.
J’espère avoir été plus précis sur mon problème.
Dixit
Niveau 2
Niveau 2
Messages : 17
Enregistré le : mer. 16 mars 2011 13:14
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#8

Message par Dixit »

Je suis désolé mais je vais devoir m'arrêter là pour les conseils car je n'aimerais pas promouvoir les bots. Désolé mais je reste prudent et si ce n'est pas le cas, je pense que tu as toute tes réponses.
Avatar du membre
cbourree
Niveau 5
Niveau 5
Messages : 104
Enregistré le : sam. 05 févr. 2011 18:07
Localisation : Lyon
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#9

Message par cbourree »

Je vous dit que ce nai pas un bot. Juste un programme qui par exemple maverti quand je suis agresser. . Bref un programme pour me facilifier certeinne taches

. Merci comme meme pour tout ces conseils. Je vais dkonc faire comme sa.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Résolution d'écran | Souris

#10

Message par Iste »

Ce n'est pas en disant que ce n'est pas un bot que ca n'en sera pas un :roll:
http://autoitscript.fr/forum/viewtopic.php?f=35&t=145

Vous trouverez facilement les réponses a vos question en lisant la doc et en regardant les tuto.
Signez ici
Verrouillé