Bonjour,
Je n'arrive absolument pas à faire varier suivant une temporisation de 5s environ entre chaque valeur, la valeur qui doit apparaitre dans un " edit field" nommé IDTS. A chaque tentative, la seule valeur qui s'affiche c la dernière valeur de la série à afficher. Le programme é en Visual C avec lcc-win32.
L'instruction qui gére cela est:
case ID_PW1:
valeur = -15;
do
{
affichage_T(1,valeur,hwndDlg);
sleep(5000);
valeur++;
}
while(valeur<60);
//EndDialog(hwndDlg,1);
return 1;
Et le sous-programme associé é:
affichage_T(int choix, int valeur,HWND hwndDlg)
{
int temp1[81]; unsigned char *temp2[81];
short j;
temp1[0]=-15;
for (j=1;j<81;j++)
temp1[j]= temp1[j-1]+1;
temp2[0]="-15"; temp2[1]="-14"; temp2[2]="-13";
temp2[3]="-12"; temp2[4]="-11"; temp2[5]="-10";
temp2[6]="-9"; temp2[7]="-8"; temp2[8]="-7";
temp2[9]="-6"; temp2[10]="-5"; temp2[11]="-4";
temp2[12]="-3"; temp2[13]="-2"; temp2[14]="-1";
temp2[15]="0"; temp2[16]="1"; temp2[17]="2";
temp2[18]="3"; temp2[19]="4"; temp2[20]="5";
temp2[21]="6"; temp2[22]="7"; temp2[23]="8";
temp2[24]="9"; temp2[25]="10"; temp2[26]="11";
temp2[27]="12"; temp2[28]="13"; temp2[29]="14";
temp2[30]="15"; temp2[31]="16"; temp2[32]="17";
temp2[33]="18"; temp2[34]="19"; temp2[35]="20";
temp2[36]="21"; temp2[37]="22"; temp2[38]="23";
temp2[39]="24"; temp2[40]="25"; temp2[41]="26";
temp2[42]="27"; temp2[43]="28"; temp2[44]="29";
temp2[45]="29"; temp2[46]="30"; temp2[47]="36";
temp2[48]="33"; temp2[49]="34"; temp2[50]="35";
temp2[51]="36"; temp2[52]="37"; temp2[53]="38";
temp2[54]="39"; temp2[55]="40"; temp2[56]="41";
temp2[57]="42"; temp2[58]="43"; temp2[59]="44";
temp2[60]="45"; temp2[61]="46"; temp2[62]="47";
temp2[63]="48"; temp2[64]="49"; temp2[65]="50";
temp2[66]="51"; temp2[67]="52"; temp2[68]="53";
temp2[69]="54"; temp2[70]="55"; temp2[71]="56";
temp2[72]="57"; temp2[73]="58"; temp2[74]="59";
temp2[75]="60"; temp2[76]="61"; temp2[77]="62";
temp2[78]="63"; temp2[79]="64"; temp2[80]="65";
switch (choix)
{
case 1:
for (j=0;j<81;j++)
{
if (temp1[j]==valeur
SetDlgItemText(hwndDlg,IDTS,temp2[j]);
}
break;
case 2:
for (j=0;j<81;j++)
{
if (temp1[j]==valeur) SetDlgItemText(hwndDlg,IDTC,temp2[j]); }
break;
}
}
Merci d'avance.