ProgressMessageEx (ihm)
De Wiki1000
(Différences entre les versions)
(Page créée avec « <source lang='delphi'>procedure ProgressMessageEx(iStatus:TMessageStatus; const iMessage:string);</source> Cette procedure affiche un message de progression dans l'interf... ») |
|||
Ligne 16 : | Ligne 16 : | ||
Exemple: | Exemple: | ||
<source lang='delphi'> | <source lang='delphi'> | ||
− | var | + | //Procedure Execute; |
− | begin | + | var idx:Integer; AStr,Info:string; |
− | + | begin | |
+ | ProgressClear; | ||
+ | ProgressMessage('Un processus exécuté'); | ||
+ | // TestPatternForEach2; | ||
+ | |||
ProgressClear; | ProgressClear; | ||
ProgressClearMessage; | ProgressClearMessage; | ||
− | + | ProgressEvent('',0,0); | |
− | + | Info := 'Lot 1'; | |
− | + | for idx:=1 to 100 do | |
− | + | begin | |
− | + | AStr := inttostr(idx) + ' '+InstanceOID+' '+intTostr(Classmanager.CurrentTranContext); | |
− | + | if (idx mod 10=0) then Info := Format('lot %d',[1+(idx div 10)]); | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | if idx mod 10=1 then | |
− | + | begin | |
− | + | ProgressMessageEx(MSGSTATUS_HEADER,'Header: '+AStr); | |
− | + | end | |
− | + | else | |
− | + | if idx mod 10=2 then | |
− | + | begin | |
− | + | ProgressMessageEx(MSGSTATUS_SUCCESS,'Success: '+AStr); | |
− | + | end | |
− | + | else | |
− | + | if idx mod 10=3 then | |
− | + | begin | |
+ | ProgressMessageEx(MSGSTATUS_ERROR,'Error: '+AStr); | ||
+ | end | ||
+ | else | ||
+ | if idx mod 10=4 then | ||
+ | begin | ||
+ | ProgressMessageEx(MSGSTATUS_FAILED,'Failed: '+AStr); | ||
+ | end | ||
+ | else | ||
+ | if idx mod 10=5 then | ||
+ | begin | ||
+ | ProgressMessageEx(MSGSTATUS_REQUIRE_ACTION,'Action: '+AStr); | ||
+ | end | ||
+ | else | ||
+ | if idx mod 10=6 then | ||
+ | begin | ||
+ | ProgressMessageEx(MSGSTATUS_ALERT,'Alerte: '+AStr); | ||
+ | end | ||
+ | else | ||
+ | ProgressMessage('Message: '+AStr); | ||
+ | // | ||
+ | ProgressEvent(Info,idx,100); | ||
+ | if UserAbort then break; | ||
+ | sleep(200); | ||
+ | end; | ||
+ | ProgressEvent('',100,100); | ||
end; | end; | ||
</source> | </source> |
Version du 9 février 2018 à 16:11
procedure ProgressMessageEx(iStatus:TMessageStatus; const iMessage:string);
Cette procedure affiche un message de progression dans l'interface utilisateur.
iStatus | Le type de message |
iMessage | Le message à afficher |
Note : Suivant le style de l'interface utilisateur le message peut être affiché dans une zone libellé ou dans une liste. |
Exemple:
//Procedure Execute; var idx:Integer; AStr,Info:string; begin ProgressClear; ProgressMessage('Un processus exécuté'); // TestPatternForEach2; ProgressClear; ProgressClearMessage; ProgressEvent('',0,0); Info := 'Lot 1'; for idx:=1 to 100 do begin AStr := inttostr(idx) + ' '+InstanceOID+' '+intTostr(Classmanager.CurrentTranContext); if (idx mod 10=0) then Info := Format('lot %d',[1+(idx div 10)]); if idx mod 10=1 then begin ProgressMessageEx(MSGSTATUS_HEADER,'Header: '+AStr); end else if idx mod 10=2 then begin ProgressMessageEx(MSGSTATUS_SUCCESS,'Success: '+AStr); end else if idx mod 10=3 then begin ProgressMessageEx(MSGSTATUS_ERROR,'Error: '+AStr); end else if idx mod 10=4 then begin ProgressMessageEx(MSGSTATUS_FAILED,'Failed: '+AStr); end else if idx mod 10=5 then begin ProgressMessageEx(MSGSTATUS_REQUIRE_ACTION,'Action: '+AStr); end else if idx mod 10=6 then begin ProgressMessageEx(MSGSTATUS_ALERT,'Alerte: '+AStr); end else ProgressMessage('Message: '+AStr); // ProgressEvent(Info,idx,100); if UserAbort then break; sleep(200); end; ProgressEvent('',100,100); end;
Voir aussi: