Case à cocher(check box [Résolu]

Signaler
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
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

Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
14
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 106 internautes nous ont dit merci ce mois-ci

Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
21
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
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

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
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
14
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
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

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
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

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 !!