<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut tout le monde,
J'essaie d'implémenter un comportement de glisser-déposer pour deux zones de liste dans JSL. Fondamentalement, j'essaie de reproduire le comportement de glisser-déposer qui existe déjà pour les objets colListBox pour les zones de liste normales, c'est-à-dire qu'un utilisateur peut cliquer sur n'importe quel élément d'une zone de liste, cliquer, le faire glisser et le déposer dans une autre zone de liste. J'ai réussi à implémenter le comportement souhaité pour la boîte de dépôt de réception, cependant, j'ai du mal avec la boîte de dépôt source. Fondamentalement, je ne sais pas comment mettre en œuvre le comportement que je veux. Le plus proche que j'ai est de laisser la fonction set click désactivée pour la boîte de souris parent de la zone de liste, d'activer le glisser et de mettre le code suivant dans les fonctions << set drag begin et << set drag end :
<< Set Drag Begin(
Function( {this, clickpt},
If( N Items( (this << child) << Get Selected ) == 0,
(this << child) << Set Selected(1);
0;
,//Else
test = ( (this << child) << Get Selected );
test[1];
);
);
);
et ça
<< Set Drag End(
Function( {this, clickpt, how},
If( how == "move",
(this << child) << Remove Selected;
)
);
);
Mais cela signifie que les clics simples ne fonctionnent pas pour sélectionner un élément dans la zone de liste, un utilisateur devrait double-cliquer, sinon le premier élément sera sélectionné. Ce n'est pas idéal, mais c'est tout ce que j'ai pu faire pour travailler. Toute aide ou pointeurs vers plus d'informations à ce sujet seraient grandement appréciés.
Sur une deuxième note, parfois, lorsque je fais glisser quelque chose à travers la première zone de liste, parfois l'élément que j'ai fait glisser ne supprime pas. Cela ne se produit que de manière très intermittente, mais je ne sais pas pourquoi cela se produit ni comment y remédier. Merci.
Toutes mes excuses pour ne pas être revenu plus tôt. J'ai été entraîné sur d'autres projets et je n'ai pas eu l'occasion de revoir JSL pendant un certain temps. Cela a très bien fonctionné pour moi. Vraiment de bons commentaires aussi. Je me demande simplement s'il y a plus de documentation sur MouseBox disponible sur le Web ? Je n'ai pas eu beaucoup de succès à le retrouver et j'aimerais plus d'informations sur les mécanismes de MouseBox, drop commit, etc.