1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
| <HTML>
<HEAD>
<Title> Demo choix </Title>
<HTA:APPLICATION
APPLICATIONNAME="MemoChoix"
ID = "MemoChoix"
>
</HEAD>
<SCRIPT language="VBScript" type="text/vbscript">
'************************************************************************************
'Déclarations utilisables dans toute la partie VBScript
Dim FSO, DossierRacineDuProg, LeFichier, PourTbl, T
'----------------------------------------------------------------------------------------------------------------------
Sub Window_Onload()
Dim ChemNomComplet
CreeFichier
ChemNomComplet = MemoChoix.CommandLine ' ChemNomComplet = Id du programme.CommandLine
DossierRacineDuProg = Left(ChemNomComplet, (InStrRev(ChemNomComplet, "\", -1, vbTextCompare)))
DossierRacineDuProg = Replace(DossierRacineDuProg,Chr(34),"")
'récupération de l'état des checkbox de la dernière session
Set FSO = CreateObject("Scripting.FileSystemObject")
Set LeFichier = FSO.OpenTextFile(DossierRacineDuProg & "Params.txt",1)
PourTbl = Split(LeFichier.ReadAll,","): LeFichier.Close
Set FSO = Nothing: Set LeFichier = Nothing
'met à jour les checkbox
For T = 0 To Ubound(PourTbl) - 1 : chkChoix(T).CHECKED = PourTbl(T): Next
' Ubound(PourTbl) - 1 car on commence à 0
End Sub
'----------------------------------------------------------------------------------------------------------------------
Sub Window_onUnLoad()
'actualise le tableau d'etat des checkbox
'For T = 0 To Ubound(PourTbl): PourTbl(T) = ABS(Cint(chkChoix(T).CHECKED)): Next
ReDim Preserve PourTbl(chkChoix.Length)
For T = 0 To ChkChoix.Length - 1 ' ChkChoix.Length - 1 car on commence à 0
PourTbl(T) = ABS(Cint(chkChoix(T).CHECKED))
Next
'Mémorise en réécrivant le fichier
Set FSO = CreateObject("Scripting.FileSystemObject")
Set LeFichier = FSO.OpenTextFile(DossierRacineDuProg & "Params.txt",2, True)
LeFichier.Write join(PourTbl,","): LeFichier.Close
Set FSO = Nothing: Set LeFichier = Nothing: Set PourTbl = Nothing
End Sub
'===================================================================================
Sub CreeFichier()
Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FileExists("Params.txt") Then
Set Fich = fso.GetFile("Params.txt")
If Fich.Size = 0 Then
Set Fich = fso.OpenTextFile("Params.txt", 2, False)
Fich.WriteLine("0") ' Pour éviter l'erreur "L'entrée dépasse la fin du fichier"
Fich.Close
Set fso = Nothing : Set Fich = Nothing
Else
Exit Sub
End If
Else
Set Fich = fso.OpenTextFile("Params.txt", 2, True)
Fich.WriteLine "0"
Fich.Close
Set fso = Nothing : Set Fich = Nothing
End If
End Sub
'************************************************************************************
</SCRIPT>
<BODY>
<BR> Les Choix : <BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix1">Choix 1<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix2">Choix 2<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix3">Choix 3<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix4">Choix 4<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix5">Choix 5<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix6">Choix 6<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix7">Choix 7<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix8">Choix 8<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix9">Choix 9<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix10">Choix 10<br>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix11">Choix 11<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix12">Choix 12<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix13">Choix 13<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix14">Choix 14<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix15">Choix 15<BR>
<INPUT TYPE="checkbox" NAME="chkChoix" VALUE="Choix16">Choix 16<BR>
</BODY>
</HTML> |