Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
;ouvrir le programme VISIONLITE
Run('C:\Program Files\VISIONlite\Visionlite.exe')
WinWait("Thermo Scientific","Cancel")
If Not WinActive("Thermo Scientific","Cancel") Then WinActivate("Thermo Scientific","Cancel")
WinWaitActive("Thermo Scientific","Cancel")
;Sélectionner la méthode (par mouvement de souris)
MouseMove(341,283)
MouseDown("left")
MouseUp("left")
MouseMove(370,345)
MouseDown("left")
MouseMove(371,345)
MouseUp("left")
WinWait(" VISIONlite Scan","Advanced Parameters")
If Not WinActive(" VISIONlite Scan","Advanced Parameters") Then WinActivate(" VISIONlite Scan","Advanced Parameters")
WinWaitActive(" VISIONlite Scan","Advanced Parameters")
MouseMove(503,58)
MouseDown("left")
MouseUp("left")
MouseMove(255,125)
MouseDown("left")
MouseUp("left")
MouseMove(193,143)
MouseDown("left")
MouseUp("left")
MouseMove(180,146)
MouseDown("left")
MouseUp("left")
MouseMove(108,69)
MouseDown("left")
MouseMove(107,69)
MouseUp("left")
;Mesurez le blanc
WinWait("Sample Information [chlorophylle.msc]","Measure blank")
If Not WinActive("Sample Information [chlorophylle.msc]","Measure blank") Then WinActivate("Sample Information [chlorophylle.msc]","Measure blank")
WinWaitActive("Sample Information [chlorophylle.msc]","Measure blank")
; boite de dialogue
;MsgBox(0, "METTRE LE BLANC", "Avez-vous mis le blanc ?")
$Res = _MsgBoxPerso("METTRE LE BLANC", "Avez-vous mis le blanc ? ", 200, 300)
; lancer l'acquisition du blanc
MouseMove(90,15)
MouseDown("left")
MouseUp("left")
MouseMove(195,219)
MouseDown("left")
MouseUp("left")
MouseMove(98,73)
MouseDown("left")
MouseUp("left")
MouseMove(194,170)
MouseDown("left")
MouseMove(195,169)
MouseUp("left")
; fin acquisition du blanc
; préparer l'acquisition de l'échantillon
WinWait("Sample Information [chlorophylle.msc]","Hilfsfeld Grid")
If Not WinActive("Sample Information [chlorophylle.msc]","Hilfsfeld Grid") Then WinActivate("Sample Information [chlorophylle.msc]","Hilfsfeld Grid")
WinWaitActive("Sample Information [chlorophylle.msc]","Hilfsfeld Grid")
send("1") ; le fichier de scan sera nommmé "1"
; boite de dialogue
;MsgBox(0, "RETIRER LE BLANC", "Avez-vous retiré le blanc et mis l'échantillon à la place ?")
$Res = _MsgBoxPerso("RETIRER LE BLANC", "Avez-vous retiré le blanc" &@CRLF & "et mis l'échantillon à la place ?", 200, 300)
; lancer l'acquisition de l'échantillon
Send("{ENTER}")
WinWait(" VISIONlite Scan","Yes to all")
If Not WinActive(" VISIONlite Scan","Yes to all") Then WinActivate(" VISIONlite Scan","Yes to all")
WinWaitActive(" VISIONlite Scan","Yes to all")
MouseMove(109,137)
MouseDown("left")
MouseUp("left")
WinWait("Sample Information [chlorophylle.msc]","Measure blank")
If Not WinActive("Sample Information [chlorophylle.msc]","Measure blank") Then WinActivate("Sample Information [chlorophylle.msc]","Measure blank")
WinWaitActive("Sample Information [chlorophylle.msc]","Measure blank")
MouseMove(111,72)
MouseDown("left")
MouseUp("left")
MouseMove(323,217)
MouseDown("left")
MouseUp("left")
WinWait(" VISIONlite Scan","Advanced Parameters")
If Not WinActive(" VISIONlite Scan","Advanced Parameters") Then WinActivate(" VISIONlite Scan","Advanced Parameters")
WinWaitActive(" VISIONlite Scan","Advanced Parameters")
; enregistrer sous le fichier de scan en SCV (sur le dernier nom de fichier utillisé (chlorophylle)
MouseMove(398,45)
MouseDown("left")
MouseMove(398,44)
MouseUp("left")
MouseMove(20,38)
MouseDown("left")
MouseUp("left")
MouseMove(55,120)
MouseDown("left")
MouseUp("left")
WinWait("Enregistrer sous","Enregistrer &dans :")
If Not WinActive("Enregistrer sous","Enregistrer &dans :") Then WinActivate("Enregistrer sous","Enregistrer &dans :")
WinWaitActive("Enregistrer sous","Enregistrer &dans :")
MouseMove(352,47)
MouseDown("left")
MouseUp("left")
MouseMove(201,150)
MouseDown("left")
MouseUp("left")
MouseClick("left",206,92,2)
MouseMove(129,94)
MouseClick("left",129,93,2)
MouseMove(456,399)
MouseDown("left")
MouseUp("left")
MouseMove(292,429)
MouseDown("left")
MouseMove(292,428)
MouseUp("left")
MouseMove(146,79)
MouseDown("left")
MouseUp("left")
MouseMove(490,367)
MouseDown("left")
MouseMove(490,366)
MouseUp("left")
WinWait("Enregistrer sous","C:\Export_scan chlor")
If Not WinActive("Enregistrer sous","C:\Export_scan chlor") Then WinActivate("Enregistrer sous","C:\Export_scan chlor")
WinWaitActive("Enregistrer sous","C:\Export_scan chlor")
; fermer VISIOLITE
MouseMove(68,73)
MouseDown("left")
MouseUp("left")
MouseMove(145,99)
MouseDown("left")
MouseUp("left")
WinWait(" VISIONlite Scan","Advanced Parameters")
If Not WinActive(" VISIONlite Scan","Advanced Parameters") Then WinActivate(" VISIONlite Scan","Advanced Parameters")
WinWaitActive(" VISIONlite Scan","Advanced Parameters")
MouseMove(756,54)
MouseDown("left")
MouseUp("left")
MouseMove(1269,10)
MouseDown("left")
MouseUp("left")
WinWait(" VISIONlite Scan"," VISIONlite Scan - ")
If Not WinActive(" VISIONlite Scan"," VISIONlite Scan - ") Then WinActivate(" VISIONlite Scan"," VISIONlite Scan - ")
WinWaitActive(" VISIONlite Scan"," VISIONlite Scan - ")
MouseMove(68,40)
MouseDown("left")
MouseUp("left")
MouseMove(82,97)
MouseDown("left")
MouseUp("left")
; =============================================================================
; Fonction.
; =============================================================================
Func _MsgBoxPerso($Title = "", $Text = "", $H = 100, $L = 200)
$GUI = GUICreate($Title, $L, $H, -1, -1, BitOR($WS_CAPTION, $WS_POPUP))
GUISetIcon(@SystemDir & "\user32.dll", -3)
$Icon = GUICtrlCreateIcon("user32.dll", -3, 10, $H / 3 - 10)
$Text1 = GUICtrlCreateLabel($Text, 50, $H / 3, 200, 49, $SS_CENTER)
GUICtrlSetFont(-1, 12, 800, 0, "Arial")
$Oui = GUICtrlCreateButton("Oui", $L / 2 - 40, $H - 40, 75, 25, 0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE ; Touche echap
SetError(1)
Return 0
Case $Oui
Return 1
EndSwitch
WEnd
EndFunc ;==>_MsgBoxPerso