bvp schreef op donderdag 23 maart 2006 @ 11:27:
Tja kan zo.
Kunt ook gewoon in de class Product een methode getName() definieren en die aan de JList toevoegen. String is immers ook een Object
Dan houd je je toString() method voor het uitprinten van het gehele object Product -> dus bijv id EN name.
Nadeel daarvan is dat je, om bv een referentie naar het geselecteerde product te krijgen, weer moeilijk moet gaan doen met maps oid. Het fijne van JList, JTrees, JTables etc is dat omdat er juist Objects in gaan je alles op 1 plek opgeslagen houdt.
Dus niet zoals in bv VB eerst de naam uit je list halen en dan ergens anders het product voor die naam opzoeken, nee je haalt meteen je product uit de list.
Dat je daardoor minder informatie in je toString kan stoppen is jammer maar helaas. Als ik die info nodig heb voor debuggen dan schrijf ik wel een eigen method die dat doet. Ik kan niet de models voor JList etc aanpassen*, dus dan maar de debugging info.
* Natuurlijk kun je je eigen model gaan schrijven, maar om dat alleen te doen om je objecten anders af te beelden vind ik teveel moeite.