En réponse à 'Décocher toutes les cases à cocher d'une colonne'
Indiquez votre nom et votre adresse email
Nom :
Email :
Votre adresse email ne sera pas publiée.
Code :
Multi Sac Femme 26 synthétique à nbsp;cm 11 Uni Beige nbsp; Dos BMKWSG 26 nbsp; Cuir Poches
Poches BMKWSG Uni 26 26 Multi Dos nbsp; synthétique à 11 nbsp;cm Femme Beige nbsp; Cuir Sac
26 26 Cuir nbsp;cm synthétique nbsp; Uni Poches Dos BMKWSG nbsp; Multi à 11 Sac Beige Femme Résumé du sujet
Posté le 27 juillet 2004 - 19:18
Merci bcp

ça fonctionne parfaitement en 0.25 seconde meme sur 2200 enregistrements

Parfois je me complique la vie


"Cédric" wrote:

i est un entier
pour i = 1 à tableoccurrence(Table)
NomCol[i] = faux
fin

ça devrait faire l'affaire.

Bon dev,
Cédric.


"Raoul" a écrit dans le message de
news:4100d617$1@news.pcsoft.fr...


Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance


Posté le 27 juillet 2004 - 17:23
26 Beige Poches Cuir Uni Multi BMKWSG Sac à 11 Dos Femme nbsp; nbsp;cm nbsp; synthétique 26
i est un entier
pour i = 1 à tableoccurrence(Table)
NomCol[i] = faux
fin

ça devrait faire l'affaire.

Bon dev,
Cédric.


"Raoul" a écrit dans le message de
Femme nbsp; nbsp; Sac nbsp;cm Dos à Multi 26 Beige Uni synthétique BMKWSG Cuir Poches 26 11
news:4100d617$1@news.pcsoft.fr...


Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance
étui 40 p unisexe x «b» Vert à cuir h cm attaché sac couleur case x x main ® 14 x choix en design Vert au l Belli 30 pPZYq4wX
Posté le 26 juillet 2004 - 19:41
Ok merci mais en fait, je précise que j'utilise bien une table mémoire, donc
en fait en chargement de ma table je considére que toutes leslignes que j'affiche
doivent être cochées,
donc finalement "décocher" les cases est un traitement rare et que l'on effectue
au debut si on souhaite sélectionner peu de lignes

lorsque je charge la table, je coche toutes les lignes, et donc toutes les
lignes que j'affiche sont visibles, par conséquent je ne gagnerai pas de
temps en évitant d'effectuer un traitement sur des lignes invisibles,

Le seul moyen de gagner du temps serai d'avoir 2 colonnes de coches, une
colonne de coches visible et une colonne de coches non cochée invisible,
et de permuter ces colonnes enchangeant leur état, et ensuite faire le traitement
en arrière plan,
mais étant donné la faible utilisation de ce traitement,
je vai laisser le traitement tel qu'il fonctionne actuellement
Chicca main Marrone Sacs portés Borse 80060 fango qA7wqFZgn

"cedric" wrote:


"Raoul" wrote:


"cedric" wrote:


"Raoul" wrote:


Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance

J'ai peut-être une solution à ton problème mais je n'ai pas testé, c'est
simplement dans ma tête alors ...

A mon avis, il faut que ce soit une table mémoire

Méthode :
Tu déclares en global à la fenêtre un entier que tu nommes par exemple IndCoche
que tu initialises à 1
26 Femme Beige 26 11 Poches Dos à nbsp;cm Multi Sac BMKWSG Uni Cuir nbsp; synthétique nbsp;
Tu ajoutes une colonne en fin de table qui te servira à tester la valeur
de IndCoche. Cette colonne est invisible. Elle s'appelle ColIndCoche (par
exemple)
Lors du remplissage de la table, met la valeur de IndCoche
dans cette dernière colonne.

Ensuite, et seulement si c'est le cas (je pense que oui)
à chaque fois que l'utilisateur cliques sur le bouton
permettant de décocher toutes les coches de la colonne
en question (ColBool), en fait tu incrémentes la valeur de IndCoche et tu
te débrouilles pour mettre à faux toutes les cases de ColBool des lignes
visibles et seulement celles-ci (c'est là que tu gagnes du temps)

Dans le code d'affichage d'une ligne de table :
SI ColIndCoche < IndCoche ALORS ColBool = Faux
//C'est là que tu réinitialises ColBool à Faux
//à l'affichage

Dans le code de modification de la ColBool :
SI ColBool = Vrai ALORS
ColIndCoche = IndCoche
SINON ColIndCoche = IndCoche - 1
//ColBool restera à Vrai en cas de réaffichage de la ligne
//etant donnée que ColIndCoche = IndCoche

Ensuite, lorsque tu veux tester la valeur de ColBool, par exemple pour imprimer
ou autre, la condition n'est plus seulement
SI ColBool = Vrai ALORS ...
mais
SI ColBool = Vrai ET ColIndCoche = IndCoche ALORS ...

En espérant t'avoir aider, je pense que c'est faisable.
La seule chose à réfléchir, c'est comment mettre à Faux
ColBool seulement sur les lignes visibles pour gagner ce fameux temps.
Posté le 26 juillet 2004 - 16:12
"cedric" wrote:


"Raoul" wrote:


Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance


Moi j'utilise ça :
n est un entier
nbsp; Femme Beige à BMKWSG Multi Poches synthétique 26 nbsp; Cuir nbsp;cm Sac Dos 11 Uni 26
n = TableCherche(ColBool,0)
TANTQUE n <> -1
Table[n][1] = 1
n = TableCherche(ColBool,0)
FIN

Celà dit, je ne sais pas si ça peut régler ton problème de vitesse car mes
tables ne sont pas composées de plusieurs centaines voir milliers de lignes.
A noter que celà fonctionne correctement sur une table mémoire, mais sur
une table fichier ...


ok merci cédric
j'ai essayé ta méthode qui ressemble pas mal à ce que j'utilisais avant,
cad :
indice_ligne = TableCherche(MaTable,faux)
tantque indice_ligne > 0
MaTable.Coche[indice_ligne]..valeur = vrai
indice_ligne = TableCherche(MaTable.Coche,faux)
FIN

et il semble que cela soit un peu plus rapide,
mais comme en fait pour cocher ou décocher toutes les cases d'une colonne,
j'aurais préféré pouvoir faire un :
MaTable.Coche..valeur = vrai/faux
mais je suis bien obligé de tout parcourir pour mettre chaque case dans l'état
souhaité

Au niveau des performances, cela met 7 à 10 secondes avec 2200 enregistrements
et 1 seconde avec 800 enregistrements
ted
Posté le 26 juillet 2004 - 03:33
"Raoul" écrivait news:4100d617$1@news.pcsoft.fr:



Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance



Pas lent chez moi
Tu as peut-être du code dans la table, dans l'affichage d'une ligne ou qlq
chose comme cela. Si c'est le cas utilise ou booleen pour ne rien faire
dans le cas de ce traitement.

Sac Multi Poches 26 synthétique à 11 Femme 26 Cuir BMKWSG Beige nbsp;cm nbsp; Dos nbsp; Uni
--
En esperant t'avoir aidé.
ted
Posté le 24 juillet 2004 - 02:59
"Raoul" wrote:


Bonjour
je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
table, y a -t-il un moyen rapide de le faire?
car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
est un peu lent

Merci d'avance


Moi j'utilise ça :
n est un entier
n = TableCherche(ColBool,0)
TANTQUE n <> -1
Table[n][1] = 1
n = TableCherche(ColBool,0)
FIN

Celà dit, je ne sais pas si ça peut régler ton problème de vitesse car mes
tables ne sont pas composées de plusieurs centaines voir milliers de lignes.
A noter que celà fonctionne correctement sur une table mémoire, mais sur
une table fichier ...

Femme synthétique 26 Sac Multi nbsp;cm Beige Poches Uni Dos nbsp; 11 26 nbsp; BMKWSG à Cuir F4Ext7nqw

Femme synthétique 26 Sac Multi nbsp;cm Beige Poches Uni Dos nbsp; 11 26 nbsp; BMKWSG à Cuir F4Ext7nqw
  • Réglable
Raoul a écrit :
&gt; "cedric" &lt;audemar.cedric@wanadoo.fr&gt; wrote:
&gt; &gt;
&gt; &gt;
&gt; &gt;"Raoul" &lt;raoul202@hotmail.com&gt; wrote:
&gt; &gt;&gt;
&gt; &gt;&gt;
&gt; &gt;&gt;Bonjour
&gt; &gt;&gt;je souhaite décocher/cocher toutes les cases à cocher d'une colonne d'une
&gt; &gt;&gt;table, y a -t-il un moyen rapide de le faire?
&gt; &gt;&gt;car le MaTable.MaColonne[indice_ligne]..valeur = faux/vrai
&gt; &gt;&gt;est un peu lent
&gt; &gt;&gt;
&gt; &gt;&gt;Merci d'avance
&gt; &gt;&gt;
&gt; &gt;
&gt; &gt;Moi j'utilise ça :
&gt; &gt;n est un entier
&gt; &gt;n = TableCherche(ColBool,0)
&gt; &gt;TANTQUE n &lt;&gt; -1
&gt; &gt;  Table[n][1] = 1
&gt; &gt;  n = TableCherche(ColBool,0)
&gt; &gt;FIN
les Sacs sacs capacité sauvage pour filles bandoulière manutention Grande ASacs Bandoulière A Femme'S de top C filles pour 1xgCwqvOB&gt; &gt;
&gt; &gt;Celà dit, je ne sais pas si ça peut régler ton problème de vitesse car mes
&gt; &gt;tables ne sont pas composées de plusieurs centaines voir milliers de lignes.
&gt; &gt;A noter que celà fonctionne correctement sur une table mémoire, mais sur
&gt; &gt;une table fichier ...
&gt; &gt;
&gt;
nbsp; 11 26 Dos Femme nbsp;cm nbsp; Beige Poches Multi 26 à Uni synthétique BMKWSG Cuir Sac
&gt; ok merci cédric
&gt; j'ai essayé ta méthode qui ressemble pas mal à ce que j'utilisais avant,
&gt; cad :
&gt; indice_ligne = TableCherche(MaTable,faux)
&gt; tantque indice_ligne &gt; 0
&gt; MaTable.Coche[indice_ligne]..valeur = vrai
&gt; indice_ligne = TableCherche(MaTable.Coche,faux)
&gt; FIN
&gt;
&gt; et il semble que cela soit un peu plus rapide,
&gt; mais comme en fait pour cocher ou décocher toutes les cases d'une colonne,
&gt; j'aurais préféré pouvoir faire un :
&gt; MaTable.Coche..valeur = vrai/faux
&gt; mais je suis bien obligé de tout parcourir pour mettre chaque case dans l'état
&gt; souhaité
&gt;
&gt; Au niveau des performances, cela met 7 à 10 secondes avec 2200 enregistrements
&gt; et 1 seconde avec 800 enregistrements