Case à cocher(check box

Résolu
cs_iclic Messages postés 56 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 27 février 2005 - 3 sept. 2004 à 13:36
cs_iclic Messages postés 56 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 27 février 2005 - 3 sept. 2004 à 19:34
Voila je voulais savoir si il y avait un code pour que quand le mec coche la case ca ecrit une ligne dans un fichier (ca ji arrive) et qund il la decoche que la ligne soi t effacé(sa je sais pas faire)

Voila le code que j'ai

Private Sub Check1_Click()
If Check1.Value = 1 Then
Open "C:\slt.cfg" For Append As #1
Print #1, "slt toi "
Close #1
End If
End Sub

Docn j'aimerais savoir quel est le code a rajouté pour que quand le mec decoche la ligne rajouté dans le fichier soit effacé!!

Merci d'avance a+ !cl!c

6 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
3 sept. 2004 à 19:25
OK. Finalement, c'est plus simple que je ne pensais. Excuse-moi de ne pas avoir compris tout de suite.
Avec un fichier texte, il est facile d'ajouter des lignes avec Append (comme tu le fais) mais pour en enlever, je ne connais rien d'autre que de réécrire le fichier. Donc voilà, quand tu décoches la checkbox, le code suivant ouvre le fichier, et le réécrit sans la ligne qui correspond au choix.

Essaie le mais sauvegarde quand même ton fichier d'origine, je ne voudrais pas que tu perdes tes données à cause de mon code, même s'il y a peu de (mal)chance.
Autre observation, ce code supprimera TOUTES les lignes du fichier qui correspondent exactement à ce qu'il y a dans la variable s. (par ex, s'il y a +sieurs lignes qui sont à "slt toi " elles seront supprimées, par contre une ligne à "slt toi machin" restera).

Private Sub Check1_Click()
Dim buffer As String
Dim s As String

s = "slt toi "

If Check1.Value = 1 Then
'ajout d'enreg
Open "C:\slt.cfg" For Append As #1
Print #1, s
Close #1
Else
'ouverture du fichier d'origine
Open "C:\slt.cfg" For Input As #1
'création du fichier tempo
Open "C:\truc.cfg" For Output As #2
'lecture séquentielle du fichier d'origine
Do While Not EOF(1)
Line Input #1, buffer
'si ligne <> de la ligne à supprimer -> enreg
If buffer <> s Then
Print #2, buffer
End If
Loop
Close #2
Close #1
' destruction du fichier d'origine
Kill "C:\slt.cfg"
' renomme le fichier tempo comme le fichier d'origine
Name "c:\truc.cfg" As "C:\slt.cfg"
End If
End Sub


Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
3
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
3 sept. 2004 à 14:31
Combien de lignes y at-il dans ton fichier ?

S'il n'y en a qu'une seule, il suffit de vider le fichier

Open "C:\slt.cfg" For Output As #1
Close #1

S'il y a plusieurs lignes, il faut retrouver celle qui est à effacer ...

Manu
0
cs_iclic Messages postés 56 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 27 février 2005
3 sept. 2004 à 18:11
ui il ya bcp de lignes a peu pres 100 mais sa change pour chaque utilisateur et comment faire pour retrouver la lignes a effacer et une autre question est ce que le '#1' correspond a la ligne 1???

Merci de ton aide a+iclic
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
3 sept. 2004 à 18:37
Salut,

Nan, le #1 correspond au numéro de fichier ouvert.

Pour ton problème, il y a +sieurs solutions, tout dépend de la structure de ton fichier texte. Un tit exemple représentatif STP ?

Si tes enregs sont sur la même structure, tu peux voir du côté de : open ...... for random as #1 len = ???

etc ....
le mieux est que tu nous donnes un exemple de ton fichier texte. Au moins un enreg si tous les enregs sont sur le même modèle avec les expliks du genre : 4 1ers cars ident, 25 cars nom utilisateur, etc ...............

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_iclic Messages postés 56 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 27 février 2005
3 sept. 2004 à 18:42
oki donc voila les fameuses lignes (et jrapelle que c'ets un fichier .cfg cpareil jpense)(c des configs d'un jeu jprecise ossi(counter-strike)):

// This file is overwritten whenever you change your user settings in the game.
// Add custom configurations to the file "userconfig.cfg".

unbindall
bind "TAB" "+showscores"
bind "ENTER" "+use"
bind "ESCAPE" "cancelselect"
bind "SPACE" "+jump"
bind "'" "+moveup"
bind "+" "sizeup"
bind "," "buyammo1"
bind "-" "sizedown"
bind "." "buyammo2"
bind "/" "+movedown"
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind ";" "+mlook"
bind "=" "sizeup"
bind "[" "invprev"
bind "]" "invnext"
bind "`" "toggleconsole"
bind "a" "+moveleft"
bind "b" "buy"
bind "c" "snap"
bind "d" "+moveright"
bind "e" "+torcheadv"
bind "f" "impulse 100"
bind "g" "drop"
bind "h" "+commandmenu"
bind "i" "grenxpal"
bind "j" "cheer"
bind "k" "+voicerecord"
bind "m" "chooseteam"
bind "n" "net"
bind "o" "full2"
bind "p" "full1"
bind "q" "lastinv"
bind "r" "kevlaral"
bind "s" "+back"
bind "t" "desertal"
bind "u" "m4a1al"
bind "w" "+forward"
bind "x" "radio2"
bind "y" "mp5bal"
bind "z" "radio1"
bind "~" "toggleconsole"
bind "UPARROW" "+Avancer"
bind "DOWNARROW" "+Reculer"
bind "LEFTARROW" "+EsquiveG"
bind "RIGHTARROW" "+EsquiveD"
bind "ALT" "+strafe"
bind "CTRL" "+ducker1"
bind "SHIFT" "+jump"
bind "F1" "autobuy"
bind "F2" "rebuy"
bind "F5" "radio1"
bind "F6" "radio2"
bind "F7" "load quick"
bind "F8" "radio3"
bind "F10" "quit prompt"
bind "F11" "messagemode"
bind "F12" "messagemode2"
bind "INS" "+klook"
bind "DEL" "dropDR"
bind "PGDN" "+lookdown"
bind "PGUP" "+lookup"
bind "END" "centerview"
bind "KP_LEFTARROW" "+speed"
bind "KP_5" "impulse 201"
bind "KP_END" "lastinvrev"
bind "KP_DOWNARROW" "lastinvrev"
bind "KP_INS" "+voicerecordrev"
bind "MWHEELDOWN" "previousw"
bind "MWHEELUP" "nextw"
bind "MOUSE1" "+fire1"
bind "MOUSE2" "+fire2"
bind "MOUSE3" "+rel"
bind "PAUSE" "pause"
_cl_autowepswitch "1"
_snd_mixahead "0.1"
ati_npatch "1.0"
ati_subdiv "2.0"
bgmvolume "1.000000"
bottomcolor "6"
brightness "1"
cl_allowdownload "1"
cl_allowupload "1"
cl_backspeed "400"
cl_cmdbackup "2"
cl_cmdrate "30.000000"
cl_corpsestay "600.000000"
cl_crosshair_color "250 50 50"
cl_crosshair_size "auto"
cl_crosshair_translucent "1"
cl_dlmax "128"
cl_download_ingame "1"
cl_dynamiccrosshair "1"
cl_forwardspeed "400"
cl_himodels "0"
cl_idealpitchscale "0.8"
cl_lc "1"
cl_logocolor "#Valve_Orange"
cl_logofile "lambda"
cl_lw "1"
cl_minmodels "0"
cl_radartype "0"
cl_righthand "1"
cl_shadows "1"
cl_timeout "35"
cl_updaterate "20.000000"
cl_vsmoothing "0.05"
cl_weather "1"
con_color "255 180 30"
console "1"
crosshair "1.000000"
fastsprites "0"
fps_max "72.000000"
fps_modem "0"
gamma "3"
gl_dither "1"
gl_flipmatrix "0"
gl_fog "1"
gl_monolights "0"
gl_overbright "0"
gl_polyoffset "0.1"
hisound "1"
hpk_maxsize "4"
hud_capturemouse "1"
hud_centerid "1"
hud_draw "1"
hud_fastswitch "0"
hud_saytext_internal "1"
hud_takesshots "0"
joystick "0"
lookspring "0.000000"
lookstrafe "0.000000"
m_filter "0"
m_forward "1"
m_pitch "0.022"
m_side "0.8"
m_yaw "0.022000"
model "gordon"
MP3FadeTime "2.0"
MP3Volume "0.800000"
mp_decals "300.000000"
name "*[S]m!L3y[S]*--*!cl!c*"
net_graph "3"
net_graphpos "0.0"
net_scale "5"
r_bmodelhighfrac "5.0"
s_a3d "0"
s_automax_distance "30"
s_automin_distance "2"
s_bloat "2.0"
s_distance "60"
s_doppler "0.0"
s_eax "0"
s_leafnum "0"
s_max_distance "1000"
s_min_distance "5"
s_numpolys "200"
s_polykeep "1000000000"
s_polysize "10000000"
s_refdelay "4"
s_refgain "0.4"
s_rolloff "1.0"
s_verbwet "0.25"
sensitivity "3.000000"
skin ""
spec_autodirector_internal "1"
spec_drawcone_internal "1"
spec_drawnames_internal "1"
spec_drawstatus_internal "1"
spec_mode_internal "4"
spec_pip "0"
suitvolume "0.250000"
sv_aim "0"
sv_voiceenable "1"
team ""
topcolor "30"
viewsize "120.000000"
voice_enable "1"
voice_forcemicrecord "1"
voice_modenable "1"
voice_scale "2"
volume "0.5"
setinfo "pw-home" "xxxx"
setinfo "_pw" "xxxx"
setinfo "_vgui_menus" "1"
setinfo "_ah" "1"
setinfo "_dm" "1"
+mlook
+jlook
exec userconfig.cfg
ici la ligne que jrajoute

Donc voila ta les infos ! merci de ton aide a+iclic
0
cs_iclic Messages postés 56 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 27 février 2005
3 sept. 2004 à 19:34
merci ca marche t'es genial a+ a ui tant qu e jy suis sa te derangerai de plancher sur un otre de mes problemes ou uen personne ma repondu mais jpige pas trop stp ? tien stu veut bien

ici

DOnc voila et encore merci de ton aide !!
0
Rejoignez-nous