PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → case à cocher dans une table
case à cocher dans une table
Débuté par jeffelix13, 24 jan. 2005 16:13 - 5 réponses
Posté le 24 janvier 2005 - 16:13
bonjour,

j ai crée une table a deux colonnes(fichiers, selection)
fichiers : liste les fichiers contenu dans un repertoire
selection : contien des interrupteur(case a coché)

ma question : j aimerai, quand je coche certains interrupteurs de ma colonne pouvoir supprimer celle ci?
--------------------------------------------------------------------------------

POUR i = 1 A TableOccurrence (Fichier_Serveur_FTP)
SI Fichier_Serveur_FTP.Selection = 1 ALORS
//Suppression du fichier correspondant à la ligne i du tableau
FTPSupprimeFichier(res,SaisieRepertoirServeur+Fichier_Serveur_FTP.Fichier[i])
Info(Selection)
FIN
TableSupprimeTout(Fichier_Serveur_FTP)
ListeFichierFTP
Sablier(Faux)
FIN
-----------------------------------------------------------------------------------

ps : je ne comprend pas pourquoi cela me supprime la ligne qui est en surbrillance ou le derniere ligne que j ai coché
Posté le 24 janvier 2005 - 16:35
Il y a une petite erreur sur la condition:
POUR i = 1 A TableOccurrence (Fichier_Serveur_FTP)
SI Fichier_Serveur_FTP.Selection[i] = 1 ALORS
//Suppression du fichier correspondant à la ligne i du tableau
FTPSupprimeFichier(res,SaisieRepertoirServeur+Fichier_Serveur_FTP.Fichier[i])
Info(Selection)
FIN
TableSupprimeTout(Fichier_Serveur_FTP)
ListeFichierFTP
Sablier(Faux)
FIN


Frédéric.
Posté le 24 janvier 2005 - 17:13
rebonjour,

ca ne marche pas

cela me supprime la premiere ligne du tableau
si je coche la deuxieme ligne rien ne se passe juste que les interrupteurs se decochent
Posté le 24 janvier 2005 - 17:48
Le réaffichage de ta table est mal placé dans ta boucle. Ce que tu fais avec le code actuel:

1/ Tu regardes la première ligne de ta table
2/ Tu effaces le fichier correspondant si nécessaire
3/ Tu effaces totalement ta table
4/ Tu réaffiches ta table (sans la ligne supprimée je suppose, mais aussi avec toutes les cases sélection décochées je suppose aussi)
5/ Tu regardes la seconde ligne de ta table, qui forcément n'est plus sélectionnée et donc tu ne fais rien, mis à part reeffacer ta table et la réafficher telle quelle.
6/ Idem pour toutes les lignes suivantes.

Donc attention au placement de tes fin de boucles... ;-)
Posté le 25 janvier 2005 - 09:11
Oups !
Effectivement, sans l'indentation je n'avais pas fait attention à ce "détail".
Donc le code doit plutôt être:
POUR i = 1 A TableOccurrence (Fichier_Serveur_FTP)
SI Fichier_Serveur_FTP.Selection = 1 ALORS
//Suppression du fichier correspondant à la ligne i du tableau
FTPSupprimeFichier(res,SaisieRepertoirServeur+Fichier_Serveur_FTP.Fichier[i])
Info(Selection)
FIN
FIN
TableSupprimeTout(Fichier_Serveur_FTP)
ListeFichierFTP
Sablier(Faux)

Frédéric.
Posté le 25 janvier 2005 - 11:02
merci a tout le monde de m'aider.

mais cela ne marche toujour pas ca me supprime l interrupteur que j ai selectionné en dernier.

il m'enleve de la memoire les autres interrupteurs que j ai selectionné.

comment puis je faire?