Avatar billede SjollerDk Nybegynder
18. november 2009 - 00:13 Der er 6 kommentarer

Resultlist/Array --> jTextField

Vil gerne vise mine data fra databasen i jTextField. Prøver at iterere igennem min resultlist, og ligge den i en arrayliste, som jeg til sidst prøver at returnere til et jTextField.

følgende metode jeg har lavet i min Wrapper klasse:

public ArrayList<Laaner> showAll()
{
   
    ArrayList list = new ArrayList();
 
    try
    {
        //while loop move to all records in result set
        while (rset.next())
        {
           
            Laaner laaner = new Laaner();
           
            laaner.cprnr = rset.getLong(1);
            laaner.fornavn = rset.getString(2);
            laaner.efternavn = rset.getString(3);
            laaner.vej = rset.getString(4);
            laaner.vejnr = rset.getInt(5);
            laaner.passwd = rset.getString(6);
            laaner.email = rset.getString(7);
            laaner.tlfnr = rset.getInt(8);
            laaner.postnummer = rset.getInt(9);
           
            list.add(laaner);
           
            //CPRNR, FORNAVN, EFTERNAVN, VEJ, VEJNR, PINKODE, EMAIL, TLFNR, POSTNR
           
           
          // System.out.println (rset.getLong("cprnr")+"\t"+ rset.getString("fornavn")+"\t"+ rset.getString("efternavn")+"\t"+ rset.getString("vej")+"\t"+rset.getInt("postnummer"));
            //call methode getString, write value for columm nr. 1 and 2
            //tab is use.
           
        }
       
       
    }
    catch (SQLException e)
    {
        System.out.println("There is a sql fault (5) "+e);
    }
    catch (Exception e)
    {
        System.out.println("fault "+e);
    }
return list;
}

Følgende har jeg hurtigt smidt ind i en GUI når man trykker på en jButton:

input = " " + wrapper.showAll();

jTextField1.setText(input);

Får følgende output i mit jTextField1:

[Bibliotek.Laaner@199f91c, Bibliotek.Laaner@1b1aa65, Bibliotek.Laaner@129f3b5, Bibliotek.Laaner@13f3045, Bibliotek.Laaner@17a29a1]

Løsning:

Er ude i at jeg mangler at sætte en toString ind et eller andet sted, men er i tvivl om dette er rigtigt, og er endnu mere i tvivl om hvor den evt skal sættes ind. Har eksperimenteret lidt med det rundt omkring, men intet har virket endnu.

Håber meget på jeres hjælp, og skriv endelig hvis i mangler mere info om min kode :)

På forhånd tak.

M.v.h.

Jonas
Avatar billede arne_v Ekspert
18. november 2009 - 01:19 #1
Du vil komme en lille smule længere ved at lave en toString metode på Laaner klassen.
Avatar billede arne_v Ekspert
18. november 2009 - 01:21 #2
f.eks.:

public class Laaner {
    ...
    public String toString() {
        return fornavn + " " + efternavn;
    }
}
Avatar billede arne_v Ekspert
18. november 2009 - 01:22 #3
Men ellers vil jeg tro at du skal:
- skifte fra JTextField til JTextArea
- have en for løkke som tilføjer hver enkelt Laaner til text areat
Avatar billede arne_v Ekspert
18. november 2009 - 01:23 #4
Den forkromede løsning vil være at bruge en JTable !
Avatar billede SjollerDk Nybegynder
18. november 2009 - 13:13 #5
Nåede faktisk frem til at lave en toString metode i min laaner lige efter jeg havde skrevet her :) Tak for tippet med JTextArea.

Har kigget lidt på JTable, og ser umiddelbart lidt komplekst ud, men på prøve noget mere :)
Avatar billede arne_v Ekspert
14. december 2009 - 03:19 #6
all set ?
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