Comment répondre à cliquer sur une rangée de table dans vaadin
J'ai le code suivant:
public Button getBtnSubmit(com.vaadin.ui.Button.ClickListener l) {
if (null != l) {
btnSubmit.addListener(l);
}
return btnSubmit;
}
public Table getTableCompany(HeaderClickListener hl) {
if (null != hl) {
tableCompany.addListener(hl);
}
return tableCompany;
}
Je voudrais ajouter un listener
qui se déclenche lorsque je sélectionne une (autre) ligne dans le tableau.
Ce que je puisse actualiser certains autres, avec des commandes de la table de données, qui auditeur doit-je utiliser?
source d'informationauteur Johan
Vous devez vous connecter pour publier un commentaire.
addListener
est obsolète maintenant. Utiliser les éléments suivants à la place.Je voudrais aller
ItemClickListener
:edit: Pour Vaadin 7+, utilisez
addItemClickListener
méthode au lieu deaddListener
.Vous souhaitez ajouter un ValueChangeListener
Si vous utilisez le ValueChangeListener n'oubliez pas de mettre
Cela signifie que le navigateur signaler un changement sur la sélection immédiatement. Si vous ne définissez pas ce que votre écouteur n'est pas appelé.
Lire https://vaadin.com/book/-/page/components.table.htmlsection 5.15.1 "Sélection d'un élément dans un Tableau". Vous souhaitez ajouter une Propriété.ValueChangeListener.
Beaucoup de ces réponses sont à la fois correct et incorrect.
Si vous avez besoin d'obtenir les éléments sélectionnés en réponse au clic, enregistrer un ValueChangeListener. L'appel de getValue() pour récupérer la sélection de la ItemClickListener pourrait être 1 point derrière dans une liste à sélection Multiple. Par exemple, l'ensemble des éléments à ne pas inclure/exclure l'élément de déclenchement de la fonction de rappel. Vous n'aurez pas une référence à l'élément cliqué.
Si vous voulez simplement répondre à un clic sur un élémentet n'ont pas besoin de considérer la sélection actuelle de l'état, enregistrer un ItemClickListener à la place. De cette façon, vous saurez ce point a été effectivement cliqué.