obtenir des données de la zone d'affichage stockée dans un tableau associatifHé,
J'essaie d'avoir un tableau qui contient des informations sous forme de clé et affiche des cases sous forme de valeurs, mais je n'arrive pas à obtenir leur statut correct (pour la case à cocher) par la suite - toutes les cases à cocher renvoient à 0 même si elles sont enfoncées.
Je n'arrive pas à comprendre si cela est dû à un problème de syntaxe ou à quelque chose de plus profond, voici mon code :
MainDisplayBox = V List Box();
DisplayArray = Associative Array();
current data table(dt);
For Each Row(
DisplayArray[char(:Col1)] = list(checkbox(""),hlist box(
text box(char(:Col1)||": suggested value: "),
Text Edit Box(round(:Col2,3)),
));
MainDisplayBox << append(hlistbox(eval((DisplayArray[Col1][1])),eval((DisplayArray[Col1][2]))));
);
OffsetCloseButton = Button Box("close",OffsetWindow<<CLOSE window=""></CLOSE>
Merci,
Ben.
Modélisation statistique avancéeAutomatisation et scriptsÉtudes de consommation et de marchéPersonnalisation de masseIngénierie Qualité et ProcédésRe : obtenir des données d'une zone d'affichage stockée dans un tableau associatifMerci!
Bizarre la façon dont les références sont gérées, mais je comprends votre point de vue, votre approche est plus facile à gérer avec un peu de recherche de données dans le tableau, donc cela fonctionnera très bien pour moi.
concernant le remplacement des données dans le tableau - la table sur laquelle je parcourais était un résumé, donc les doublons ne posent pas de problème 
Merci encore,
Ben.
Re : obtenir des données d'une zone d'affichage stockée dans un tableau associatifIl y a quelque chose qui ne va pas au moins dans la façon dont vous enregistrez les références Combo Box dans DisplayArray. Vous pouvez le voir assez facilement en vérifiant les valeurs de DisplayArray. Les cases à cocher sont considérées comme :
Check Box("")Quand ils devraient être considérés comme quelque chose comme ceci :
nw = new window("", cb = checkbox("test")); //<STRONG>cb = DisplayBox[CheckBoxBox]</STRONG>
Vous enregistrez donc une nouvelle case à cocher avec des valeurs vides dans votre DisplayArray, pas une DisplayBox faisant référence à une case à cocher.
Je pense également qu'il pourrait y avoir un moyen plus simple de créer cette fenêtre de sélection de case à cocher que celui dont vous disposez actuellement. Pourriez-vous fournir par exemple une image et ce que vous voulez qu'elle fasse ? Par exemple, vous parcourez actuellement chaque ligne de la table de données avec For Each Row(), puis utilisez Associative Array() pour enregistrer les zones d'affichage. Le tableau associatif n'aura qu'une seule valeur par clé, donc si vous avez des valeurs dupliquées sur :Col1, vous n'obtiendrez que la dernière "valeur".
Exemple rapide utilisant la table de données Big Class qui pourrait vous donner quelques idées :
Voir plus...