Peut on ajouter une image dans un type java .awt.List ? - Java - Programmation
Marsh Posté le 06-11-2002 à 11:49:02
List.add() attend un paramètre de type java.lang.Object en paramètre, donc tu peux ajouter n'importe quel objet de ce type. Et comme ce type est le type de base de tous les objets en Java, tu peux ajouter à une liste n'importe quoi qui n'est pas un atomique.
Maintenant, reste à savoir si ce que tu mets en paramètre de l'appel à la fonction est cohérent. ("une chaine qqconque" + une image genre icone, ça signifie quoi ? Soit ton une image genre icone est en fait de type java.lang.String (exemple, le chemin d'une image), auquel cas il existe bien un opérateur + de concaténation de 2 chaines de caractères, et le résultat de cette concaténation sera alors ajouté à ta liste, soit c'est d'un autre type (par exemple javax.swing.Icon), et cette expression n'a aucun sens.
Le compilateur Java essaiera de faire ce qu'il peut avec cette expression dénuée de sens et, sans doute, essaiera de convertir ton objet d'un autre type en une chaîne de caractères (typiquement en appelant toString), ce qui lui permettra ensuite d'appliquer la concaténation correctement.
Marsh Posté le 06-11-2002 à 13:26:12
BifaceMcLeOD a écrit a écrit : List.add() attend un paramètre de type java.lang.Object en paramètre, .....[bla bla bla] |
Bifaceuuuh!! Lis le message!! On parle de java.awt.list!! Et dans cette classe, la méthode add ne prend qu'une String en paramètre....donc, pour répondre à la question de touflb, non, on peut pas.
Marsh Posté le 06-11-2002 à 13:29:45
Oups, je ne sais pas lire ! Honte sur moi sur 7 générations ! (au moins )
Bon bah gfive a répondu tout bien comme il faut dans l'autre topic, je n'ai rien d'autre à ajouter, mon commandant.
Enfin, bon, pour le coup de l'encapsulation de ses infos dans une seule classe, je n'avais pas tout faux non plus quand même, ça lui sera utile (on essaie de se rattraper comme on peut... )
Marsh Posté le 06-11-2002 à 11:36:04
Genre faire un add("une chaine qqconque" + une image genre icone)