| Synchroniser deux objets de type list | |
|
|
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Synchroniser deux objets de type list Mer 26 Mai 2010 - 17:36 | |
| Actuellement, quand on place côte à côte deux objets de type list, il n'y a pas de moyen de synchroniser les affichages des deux objets. Je m'explique: in click sur une ligne dans un list ou sur son ascenseur active cet objet et déplace éventuellement l'affichage. On peut récupérer le numéro de la ligne clickée par item_index(). Mais rien n'est prévu pour forcer le positionnement de l'autre liste dans la même configuration, ce qui est pénible pour des listes de libellés et valeurs qui doivent restées synchronisées. Je sais qu'un peut utiliser une seule liste dans laquelle, ligne par ligne, on concatène les deux chaînes de caractères, avec la gymnastique évidente pour le colonnage. Je suggère une commande de type LIST_SYNCHRONIZE Lmaster, LslaveLa liste Lslave effectuerait les mêmes mouvements et affichages que la liste Lmaster. L'endroit "actif" de la liste Lslave sera également actualisée, de sorte que item_index(Lslave) donne le MEME résultat que item_index(Lmaster). Le plus souvent, la liste Lslave sera inactivée. Mais on peut parfaitement imaginer le code suivant: - Citation :
list 10 file_load 10,"libellés.txt" list 11 file_load 11,"données.txt" list_synchronize 10,11 : ' déplacer liste 11 sur click dans liste 10 list_synchronize 11,10 : ' déplacer liste 10 sur click dans liste 11
Dans cet exemple, les deux listes seraient actives simulanément et un déplacement de l'une entraîne un déplacement symétrique de l'autre. Il est bien sûr entendu que cela n'a un sens que si les deux listes ont la même longueur. | |
|
| |
Invité Invité
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 20:11 | |
| C'est une bonne idée. J'avais eu ce genre de problème. Dès qu'il y a débordement d'une liste, les ascenseurs se mettent en place sur cette liste, et il n'y a plus de correspondance avec les autres listes. Ce qui m'a valu de faire une liste qui regroupait l'ensemble des autres pour si retrouver. Je ne sais plus si j'avais posé le problème ou non (je ne crois pas vu que je n'aurai pas été suivi).
@+ |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 20:52 | |
| Si, tu en as parlé dans le forum. Avant de poster, j'ai bien sûr fait des recherches pour savoir si quelqu'un avait déjà trouvé une solution, et j'ai donc trouvé ton énoncé de problème, mais il n'y a jamais eu de solution.
Alors, je tente à mon tour - peut-être que le temps est mûr pour cela; en tout cas, je l'espère. C'est quand-même un manque de ne pouvoir positionner une liste et de ne pouvoir la synchroniser.
Dans d'autres langages, il y a certaines possibilités, et en plus, il y a des tableaux multi-colonnes, qui pourraient aussi constituer une solution. Mais la gestion d'un tel objet est beaucoup plus complexe. Je suis persuadé qu'une commande comme LIST_SYNCHRONIZE n'est pas si compliquée que ça à réaliser... | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 22:09 | |
| Il serait peut-être également intéressant de savoir quel est le premier élément de la liste qui est affiché, pour savoir si l'utilisateur a manipulé l'ascenseur, et de pouvoir forcer l'affichage de la liste à partir d'un élément donné. Ce qui permettrait accessoirement de synchroniser manuellement... à condition de surveiller le mouvement, ou d'être averti d'une manipulation de l'ascenseur, ce qui n'est pas le cas actuellement il me semble. | |
|
| |
Invité Invité
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 22:33 | |
| Si synchroniser pose un problème, une solution plus simple (pour Jack uniquement) serait de pouvoir lister à partir du nième élément de la liste. Ainsi avec une variable de décalage, on pourrait afficher chaque liste ajouté de cette variable à partir de la 1ère ligne, sinon il ne reste plus que créer une série de liste de remplacement dans lesquelles ont efface le contenu au départ, et on ajoute dans celle-ci celle des listes de départ décalé de X éléments pour qu'on ne voient que ce qu'on veut bien voir. (explication tordu, je l'avoue mais je suis comme ça) |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 22:56 | |
| Spécifier un numéro de ligne pour le réaffichage d'une liste ne sert que si l'on peut récupérer le numéro de la première ligne affichée dans l'autre liste... | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Synchroniser deux objets de type list Mer 26 Mai 2010 - 23:32 | |
| C'est ce que je suggérais plus haut: - une fonction pour savoir quel est le 1er élément affiché - + une fonction pour forcer l'affichage à partir d'un élément donné. | |
|
| |
Invité Invité
| Sujet: Re: Synchroniser deux objets de type list Jeu 27 Mai 2010 - 15:53 | |
| Je ne vais pas m'étendre, vu que je suis en accord avec Klaus pour la demande d'une commande de synchronisation.
Je reviens sur les éventuelles possibilités avec des listes de substitutions. Ce n'est pas impossible vu que cela je l'ai fait avec d'autres basics pour lesquels il n'y avait pas d'objet, il fallait tout créé; avec la position de la souris pour retrouver la bonne ligne, et tenir compte des décalages. Donc c'est faisable, mais aujourd'hui avec Panoramic, ce serait plus simple et plus dans la logique de cet éditeur d'avoir une vrai fonction qui comme container_option, englobe plusieurs listes ensemble. Peut_être dans ce cas pour que cela soit plus efficace, faudra t-il aussi avoir une commande unique de programmation de fonte et size, pour que cela soit cohérent.
Je me sens obligé de répondre vu que d'après ce que j'ai lu, il y avait une erreur de ma part. De toute façon le plus important est la demande légitime de Klaus. Ce que je propose n'est que de la "réparation"
@+ |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 30 Mai 2010 - 12:22 | |
| Ca m'avait déjà manqué à un moment où je voulais faire un programme comme ça. Je ne sais pas si c'est possible, mais c'est une bonne idée de le demander ! | |
|
| |
Contenu sponsorisé
| Sujet: Re: Synchroniser deux objets de type list | |
| |
|
| |
| Synchroniser deux objets de type list | |
|