Herve AGNOUX wrote: > Le Mardi 24 Septembre 2002 06:58, Remi Forax a �crit : > > >>Les composants graphiques sont tous des beans, pour faciliter leurs >>int�grations dans des IDEs. Donc cloner un bean reviens �, >>cr�er une nouvelle instance par le constructeur par d�faut, >>recup�rer chaque valeur du composant � cloner et les injecter dans >>le composant nouvellement cr�er. >> >>Voila, la package java.beans et l� pour cela. >> > > > Moi je trouve que cette technique s'apparente � "pourquoi faire simple quand > on peut faire compliqu�" ! Pareil pour la s�rialization, d'ailleurs, mais > c'est peut �tre finalement la plus facile... si elle marche... > > Et je ne vois rien dans le java.beans qui me facilite vraiment la t�che... > Faire de l'introspection avec l'aide du BeanInfo ?... Faire de > l'instrospection pour faire un clone !? C'est Total Louf !
completement d'accord, c'est compliqu�, mais je ne crois pas qu'il y est mieux. > > D'autant plus que ce n'est pas aussi simple : si je prends la position, par > exemple, getBounds me renvoie un objet Rectangle. Si je l'injecte directement > dans mon nouveau JComponent, tout le monde aura le m�me objet Rectangle. Donc > si je modifie la position de l'un, automatiquement la position de l'autre va > �tre modifi�e. et non, cf doc de setBounds() > Pour palier � �a, il faudra que je fasse un clone (en esp�rant > ne pas �tre oblig� de repasser par un BeanInfo ! ) du rectangle. Hors rien > dans le BeanInfo me dit qu'il faut que je le fasse. Seul moi le "sais". Donc > je peux m�me pas faire de traitement g�n�rique � partir du BeanInfo ! > > Pourtant c'est un probl�me qui me semble assez courant au d�part : j'ai un > panneau ; l'utilisateur veut faire tel et tel traitement dans une fen�tre de > dialogue ; je lui pr�sente dans la fen�tre une pr�visualisation de ce qu'il > fait, et s'il est content, hop il valide tout. On voit �a dans word, gimp, > photoshop... pas bien compris tu peux mieux expliquer. Pourquoi ne pas changer le parent de ton truc de visualisation. Par d�faut, lorsquon fait un add d'un composant, si celui-ci est d�j� dans une autre hi�rarchie, il est enlever de celle-ci avant d'�tre ins�rer dans la nouvelle. > > Excusez-moi de demander un cours de base Java, mais pour faire �a, en Java, > on fait comment ? BeanInfo ou Serialization sp�cifique !? > > Remi
