Execution fonction bouton simultanée

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
danylarson
Niveau 2
Niveau 2
Messages : 24
Enregistré le : mer. 18 janv. 2017 12:25
Status : Hors ligne

Execution fonction bouton simultanée

#1

Message par danylarson » jeu. 11 janv. 2018 13:25

Bonjour,

J'aurais besoin de savoir quelles sont les technique que je peux employer sur AutoIt pour pouvoir lancer simultanement les actions de plusieurs boutons

Ce code illustre mon besoin :

Code : Tout sélectionner

#include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>
#include <Array.au3>
#include <GuiToolTip.au3>

$Frm_Window = GUICreate(" TEST AUTOMATIQUES ", 600, 500, 25, 50, $WS_OVERLAPPEDWINDOW, $WS_EX_ACCEPTFILES)

$Lstv_Test_1 = GUICtrlCreateListView("Col 1|Col 2| Col 3|Col 4 ", 5, 5, 400, 200)
$Lstv_Test_2 = GUICtrlCreateListView("Col 1|Col 2| Col 3|Col 4 ", 5, 5 + 220, 400, 200)

$Button1 = GUICtrlCreateButton("Action 1", 425, 5, 150, 30)
$Button2 = GUICtrlCreateButton("Action 2", 425, 5 + 40, 150, 30)
$Button3 = GUICtrlCreateButton("Action 3", 425, 5 + 40 + 40, 150, 30)

GUISetState(@SW_SHOW)

While 1

	$Msg = GUIGetMsg()

	Switch $Msg

		Case $GUI_EVENT_CLOSE

			ExitLoop

		Case $Button1

			Function_1()

		Case $Button2

			Function_2()

		Case $Button3

			Function_3()

	EndSwitch

WEnd

Func Function_1()

	For $i = 1 To 10

		$New_Item = GUICtrlCreateListViewItem(" ceci|est|un|test" & $i, $Lstv_Test_1)
		Sleep(1000)

	Next

EndFunc   ;==>Function_1

Func Function_2()

		For $i = 1 To 10

		$New_Item = GUICtrlCreateListViewItem(" ceci|est|un|test" & $i, $Lstv_Test_2)
		Sleep(1000)

	Next

EndFunc   ;==>Function_2

Func Function_3()

	MsgBox($MB_OK, "test", "ceci est un test")

EndFunc   ;==>Function_3



Merci de votre aide

jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2092
Enregistré le : lun. 30 mars 2009 21:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: Execution fonction bouton simultanée

#2

Message par jchd » jeu. 11 janv. 2018 16:54

Bonjour,

AutoIt est définitivement "single-threaded", donc pas plusieurs threads à l'horizon.
De toute façon, "threads are evil".
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11435
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: Execution fonction bouton simultanée

#3

Message par Tlem » jeu. 11 janv. 2018 18:41

danylarson a écrit :
jeu. 11 janv. 2018 13:25
lancer simultanement les actions de plusieurs boutons
Comme l'a dit jchd, pas de multitâche possible avec un seul script. Par contre, rien ne vous empêche de créer plusieurs scripts ou de trouver une solution pour relancer le même script plusieurs fois afin d'effectuer plusieurs actions "simultanées". ^^
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
mikell
Modérateur
Modérateur
Messages : 5870
Enregistré le : dim. 29 mai 2011 16:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Execution fonction bouton simultanée

#4

Message par mikell » jeu. 11 janv. 2018 22:24

On peut aussi rajouter un quatrième bouton $Button4 pour lancer une fonction qui fera les 3 actions :mrgreen:
Mais les actions seront successives, pas simultanées :roll:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )

Répondre