Bonjour,
J'ai créé un petit élément que j'ai rajouté à ma Palette. Il s'agit d'un Panel avec une liste de ItemButton. Chaque ItemButton est un JButton relié à un object (item).
J'aimerais pouvoir "fire" un event quand l'utilisateur clique sur un Bouton, afin de récupérer l'item inclus dans le ItemButton.
Dans mon code, j'ai :
Je peux evidemment faire tourner ce que je veux par exemple en créant une fonction doTheAction() vide, et mes futurs composants n'auront plus qu'à implémenter cette fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 public void setItemClicked(T itemClicked) { this.itemClicked = itemClicked; } protected void organizeLayout() { this.panel.removeAll(); for (int i = 0; i < this.model.size(); i++) { T elt = this.model.get(i); ItemButton<T> bouton = new ItemButton(elt); panel.add(bouton); /** click on the button */ bouton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { /* Ici je peux assez de choses pour faire tourner l'appli */ setItemClicked( ((ItemButton<T>)evt.getSource()).getItem() ); } }); }//end for }
Mais c'est pas très sexy. J'ai réussi à intégrer mon objet dans la Palette. Quand, dans Matisse, je change la property Title, ca fonctionne nickel. Et maintenant j'aimerais pouvoir ajouter les événements qui me plaise. Malheureusement, je suis un peu une quille dnas la gestion des EventsHelp please
![]()
Partager