Avatar billede hildesheim Nybegynder
17. november 2005 - 23:05 Der er 7 kommentarer og
1 løsning

Vise navn og samtidig få ID fra en JList (ID er fra database)

Vi har en række personer i en Access-database. Navnene på disse personer vises i en JList i en JScrollPane. Samtidig vil vi gerne putte ID med i JList'en på en måde, så vi kan bruge ID'en til at hente personens oplysninger fra DB'en i stedet for navnet (hvor det jo evt. kan være flere med samme navn).

Er der en måde, man kan gøre dette på?
Avatar billede mikkelbm Nybegynder
17. november 2005 - 23:10 #1
Wrap jeres informationer ind i objekter.

Lav f.eks. et objekt der hedder Person - denne klasse har så et navn og et id. Så overskriver I toString metoden, da det er denne der vil blive kaldt af JList'en.

public class Person
{
  private int id;
  private String name;

  public Person (int id, String name)
  {
      this.id = id;
      this.name = name;
  }

  public int getId ()
  {
      return id;
  }

  public String getName ()
  {
      return name;
  }
 
  public String toString ()
  {
      return name;
  }
}

Når I så henter det ud igen bliver det noget a la:

Person person = (Person)jList.getSelectedValue ();

// Nu har I så adgang til de informationer i person-objektet.

databaseManager.load (person.getId()); // <-- eller noget lignende
Avatar billede hildesheim Nybegynder
17. november 2005 - 23:14 #2
når jeg så putter et array af person-objekter ind i JList'en, bruger den så automatisk dens toString-metode?
Avatar billede mikkelbm Nybegynder
17. november 2005 - 23:17 #3
Jeps.
Avatar billede hildesheim Nybegynder
17. november 2005 - 23:18 #4
Smart - prøver lige...
Avatar billede mikkelbm Nybegynder
17. november 2005 - 23:19 #5
Se eventuelt her:

http://java.sun.com/docs/books/tutorial/uiswing/components/list.html

Hvis du vil customize din JList endnu mere.
Avatar billede hildesheim Nybegynder
17. november 2005 - 23:26 #6
Virker super! Jeg havde tænkt på noget i den stil, men jeg vidste ikke dét med, at den bruger toString'en. Tak for hjælpen! :-)
Avatar billede mikkelbm Nybegynder
18. november 2005 - 08:14 #7
Hvis det virkede så husk at lukke spørgsmålet ;)
Avatar billede hildesheim Nybegynder
18. november 2005 - 11:14 #8
Sådan - troede jeg havde gjort det...flot :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester