Lista atrybutow obiektu pokazana w pop-upie

0

Hej,
Chcialbym wyswietlic liste obiektow (a dokladnie ich dane, np imie, nazwisko itd) w Frame albo w jakies tabeli. Probowalem roznymi znanymi mi metodami, ale niestety najczesciej wyskakiwaly wyjatki albo adresy obiektow. Chcialbym, aby w oknie pojawila sie lista ownerow jak ponizej

Jan Kowalski Male 48
Anna Zdyb Female 23
itd.

Kod:

package com.michal;

import com.michal.creatures.Owner;

import javax.swing.*;
import java.awt.*;
import java.util.jar.JarFile;
import static com.michal.MyFrame.list;

public class OwnerListDisplay extends JFrame {

    private JFrame frame;
    private JList listOfOwners;
    private JScrollPane scrollPane;
    //private Object[] ownersList;
    private DefaultListModel ownersList;

    public OwnerListDisplay() throws HeadlessException {

           frame = new JFrame("List of owners");
           frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
           frame.setLayout(new FlowLayout());
           frame.setLocationRelativeTo(null);
           frame.setSize(300,300);

//        for (int i = 0; i < list.getOwners().size(); i++) {
//            ownersList[i]=list.getOwnerByIndex(i);
//        }
//
//            listOfOwners = new JList(ownersList); // Object[]
//            listOfOwners.setLayoutOrientation(JList.HORIZONTAL_WRAP);
//            listOfOwners.setVisibleRowCount(-1);
   
           ownersList = new DefaultListModel();
           for (int i = 0; i < list.getOwners().size(); i++) {
            ownersList.addElement(list.getOwnerByIndex(i).getName() + ", "
                    + list.getOwnerByIndex(i).getSurname() + ", "
                    + list.getAnimalsByIndex(i).getGender() + ", "
                    + list.getAnimalsByIndex(i).getAge());
            }


        
   
           listOfOwners=new JList(ownersList);
           listOfOwners.setLayoutOrientation(JList.HORIZONTAL_WRAP);
           listOfOwners.setVisibleRowCount(-1);
   
           scrollPane=new JScrollPane(listOfOwners);
           scrollPane.setPreferredSize(new Dimension(500,300));
   
   
   
   
           frame.add(scrollPane);
           frame.setVisible(true);
           frame.pack();
   
       }
    }
2

Probowalem roznymi znanymi mi metodami, ale niestety najczesciej wyskakiwaly wyjatki albo adresy obiektow.

Adresy obiektów ci wyskakują bo nie nadpisałeś toString

Jakie wyjatki ci wydkakują?
BTW nie dałeś calego kodu

1 użytkowników online, w tym zalogowanych: 0, gości: 1