Gambas France BETA


Pas de compte ? Incription

cliquer sur une couleur choisie a l'ecran

Ce sujet est résolu.

1
AuteurMessages
spheris#1 Posté le 19/7/2017 à 22:50:19
Bonjour,
question intéressante :

Je choisi une couleur dans un colorbutton.
Lors de l'appui d'un deuxieme bouton , je souhaite que le curseur de ma souris se déplace tout seul sur un pixel de l'écran contenant cette couleur.
savez-vous comment éxécuter cette action?

Je me doute qu'il faille parcourir tout l'écran avec une recherche si lepixel.color = colorbutton.value

Comment écrire ça en GB 3.9?

Merci pour vos réponses.
;)
vuott#2 Posté le 20/7/2017 à 00:12:01
Ne cedere ineluctabili possimusPardon,
tu dis de l'entier "écran" ou de la superficie d'un Objet Gambas (DrawingArea, etc.) ?
spheris#3 Posté le 20/7/2017 à 11:15:20
Vuott, dans tout l'écran entier.
;)

Tous les jours je dois automatiser une tache, à savoir :
Cliquer sur un bouton de couleur orange sur un logiciel sous wine pour actualiser une liste.
C'est pourquoi je m'arrange pour n'avoir que ce bouton orange sur l'écran.
Et je souhaite déplacer de façon automatique la souris sur ce bouton, puis cliquer (automatiquement aussi) dessus une fois par jour à 12hoo par exemple
vuott#4 Posté le 20/7/2017 à 18:44:31
Ne cedere ineluctabili possimusHic et nunc je crois que tu devras charger l'image de l'écran par un "screenshot", puis tu devras chercher la valeur de la couleur désigné du pixel dans les données brutes de l'objet "Image" obtenu. :|

Tu peux obtenir le "screenshot" par la Méthode "Desktop.Screeshot( )" .

Tu peux utiliser aussi la Méthode ".GetScreenshot( )" de la Classe "DesktopWindow", mais tu devras déterminer préalablement le numéro identificateur de la fenêtre du desktop.
gambix#5 Posté le 20/7/2017 à 23:16:20
Faire simple !pour deplacer la sourie ... ok... mais pour envoyer un click auto ... la je ne sais pas ... il va falloir en passer par xorg je pense.
Moins de texte dans une signature c'est agrandir son espace.
vuott#6 Posté le 21/7/2017 à 00:38:04
Ne cedere ineluctabili possimus
....passer par xorg...

Ciao, mon ami gambix,
uhmmm... tu as raison très probablement: les ressources du système graphiques X11 pourraient offrir une aide valide.

spheris pourrait aussi tenter avec la méthode ".SendKey()" de la Classe X11, en activant le Composant "gb.desktop.x11".
...autrement l'alternative unique serait les fonctions externes du API de X11. :silent:
spheris#7 Posté le 21/7/2017 à 11:18:35
Ok merci, je vais fouiner du coté gb.desktop.x11.
Merci pour votre aide.
;)

Remarque :
pour la souris un mouse.x = 1233 me déplace la souris.
Je pensais qu'un mouse.click déclencherait un clic.
gambix#8 Posté le 22/7/2017 à 08:34:59
Faire simple !Je n'ai pas encore joué avec ce composant... mais je vais essayer voir comment envoyer ce click
Moins de texte dans une signature c'est agrandir son espace.
spheris#9 Posté le 17/8/2017 à 22:28:38
up
;)
Flachy Joe#10 Posté le 18/8/2017 à 13:37:35
Iguane : Il Gambas Uniquement pour Activer ses NEuronesSalut,
je ne sais pas si c'est possible avec le composant gb.desktop.x11 mais c'est très facile avec un utilitaire externe : http://xmodulo.com/simulate-key-press-mouse-movement-linux.html
;) Flachy Joe ;)
spheris#11 Posté le 19/8/2017 à 13:19:19
Trop cool ! merci flachy ;)
1