-
Python en arrière plan
Bonjour,
je cherche comment lancer python en arrière plan, ayant ouvert une autre fenêtre devant, de sorte que lorsque j'appui sur une touche de mon clavier par exemple "S" comme stop, le programme s’arrête.
Je m'explique :
J'ai créé un bot pour un jeu qui gère plusieurs choses... (peu importe quoi). Sur mon ordinateur il y a donc la fenêtre python puis derrière la fenêtre de jeu. Lorsque que je lance mon programme, celui-ci met en avant la fenêtre de jeu. Je voudrai que lorsque que je le décide, tout s'arrête.
J'ai jusque la tenter de le faire à l'aide de Tkinter et bind. Une fois python derrière la fenêtre de jeu, les événements clavier ne sont plus détectés par python. Il faut que la fenêtre de python soit en avant pour que cela marche (que l'on ai d'abord cliqué dessus)
J'ai trouvé ça :
os.system( 'mon_apply_a_lancer_en_tache_de_fond > un_fichier &' )
mais ça a l'air de marcher seulement avec des fichiers autre que python.
Quelqu'un pourrait il éclairer ma lanterne ?!
por favor > merci
-
Bonjour,
Tu peux regarder du côté des threads
-
-
Bonjour,
je suis aller voir le lien sur threading.
Il y a plusieurs trucs :
Premièrement
j'ai remarqué une fonction wait_for(). Je n'arrive pas bien a comprendre comment cette fonction marche et j'en aurai besoin dans un de mes programmes.
J'ai créé une fonction('image_a_rechercher.png') qui renvoi 'True' ou 'False' si l'image correspondante est présente dans l'écran.
J'aurai besoin que mon programme fasse :
- Attendre que l'image soit présente sur l'écran.
- Si elle ne l'est pas au bout de X secondes alors tu fais autre chose.
Deuxièmement
Je ne trouve rien qui puisse interagir avec python lorsqu'une autre fenêtre est ouverte par dessus
-
Salut,
Que voudrais-tu faire dans ton terminal pendant que ton programme graphique tourne ?
À part CTRL+C bien sûr.
-
lancer une fonction qui arrête justement le programme.
sys.exit()
-
CTRL+C = Stopper le programme.
Mais, pour répondre à ta question, c'est non. Il faut obligatoirement cliquer sur le terminal pour lui donner le focus.