|
[WM17] Modification zone à cocher non prise en compte dans zr |
Débuté par Jahwa, 18 mai 2012 16:36 - 2 réponses |
| |
| | | |
|
| |
Membre enregistré 54 messages |
|
Posté le 18 mai 2012 - 16:36 |
Hello,
---info: ce bug ne se produit pas en version simulé sur PC, il a été constaté sur un programme compilé Android, et exécuté sur une tablette Samsung Galaxy 10.1 compilé sous version 61k, 69m et rectificatif 76796-----
Comme (à ma connaissance) il n'y a aucun moyen, dans un environnement Android, de connaître la ligne (dans une zone répétée) sur laquelle on clic ou modifie quelque chose, j'ai mis un interrupteur en début de ligne, ce qui permet à l'utilisateur de signaler qu'il sélectionne ce client (dans une liste de client) ou non. Je fais un traitement de cette ligne en cas de modif de l'interrupteur. Par exemple, sur l'évènement "à chaque modification ...", je crée une boucle:
Pour i = 1 a Zr_Client..Occurence Si zr_Client[i].Int_Interrupteur..Valeur = 0 Alors Supprime la ligne Fin Fin
Si je clique sur l'interrupteur de la 1er ligne celui-ci passe visuellement de "coché" à "décoché", c à dire de la valeur 1 à 0 (théoriquement). Ceci peut être vérifié par l'instruction <moimême> qui dans ce cas donne réellement la résultat de 0 quand l'interrupteur vient d'être décoché. Par contre, si dans le même évènement je met la boucle citée plus haut, celle-ci ne renvoie pas la valeur 0, mais l'ancienne valeur de 1 !!
En résumé, si je décoche la 1ère ligne, la valeur renvoyée par - moimême = 0 - zr_Client[1].Int_Interrupteur..Valeur = 1
Est-ce que je programme mal ? Suis-je passé à coté d'une instruction qui me permettrai de repérer la ligne active ? Existe-t-il un autre moyen de repérer la ligne ?
D'avance merci de votre aide Cordialement |
| |
| |
| | | |
|
| | |
| |
Posté le 22 mai 2012 - 00:16 |
Bjr,
Le 5/18/2012, Jahwa a supposé :
Comme (à ma connaissance) il n'y a aucun moyen, dans un environnement Android, de connaître la ligne (dans une zone répétée) sur laquelle on clic ou modifie quelque chose, j'ai mis un interrupteur en début de ligne, ce qui
Si ta ZoneR est "branchée" sur un fichier, c'est l'enregistrement correspondant qui est selectionné sur un "selection d'une ligne" ou double tap. Par exemple, j'ai dans un double tap d'une ZR un ouvrefille(fen_modif) et dans le init de la fen_modif avec un fichierversecran je remplis la fiche. Ceci dit, il y a tellement de bizzareries dans les ZR que c 'est pas evident. Dernierement, j'ai voulu y mettre une jauge, et ca me perturbe (bloque) le scroll de la ZR...
Pour ton pb d'interrupteur, deja que c'est "chaud" a faire fonctionner dans les tables en WD normal, suivant que la table est memoire, fichier etc.. j'essaierais meme pas de faire ce que tu tentes...
a plus et on essaie de se tenir au courant de nos "decouvertes"...
-- ------------------------------------------------------------- www.ctc-soft.com Gestion biblo-documentaire (free-share) Comptabilité shareware Logiciels de Gestion de saisie terrain Spécialisé Tournées de boulangers ------------------------------------------------------------- |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 54 messages |
|
Posté le 23 mai 2012 - 14:35 |
Merci de ta réponse
Pour vous tenir au courant de la façon dont j'ai résolu le pb :
en fait, je développais mal ! ( mal formation de Delphi !) Je pense qu'en windev (ou affilié), il faut utiliser les attributs. Par exemple en cliquant sur une zone 1 je peux savoir savoir ce que contient la zone 2 de la même ligne sans savoir le n° de ligne. En partant de ce principe je crées une zone "NumLigne" (cachée ou visible selon besoins) dans ma zr, qui incrémente la ligne. Donc si je clique sur la zone 1, je repère le numligne, et dans une boucle de traitement sur toutes les lignes de la zr, je peu faire un traitement spécifique à ma ligne, code: Pour i = 1 a zr_ma-zr..occurence si zr_ma-zr[att_numligne].zone2 = ... ...traitement de ma ligne sinon ... traitement des autres lignes zr_ma-zr[i].zone2 =
Voilà si ça peu faire avancer le chimili ... |
| |
| |
| | | |
|
| | | | |
| | |
|