TreeSelectionEvent mit rechtem splitPane verbinden

Roobiks

Mitglied
Hallo

Ich habe folgende Page von Oracle gefunden:

https://docs.oracle.com/javase/tuto...DemoProject/src/components/SplitPaneDemo.java

Ich möchte nun anstelle von Bildern rechts eine Klasse, die ein textarea enthält, darstellen.
Kann mir jemand helfen, wie ich den Code abzuändern habe oder kann mir jemand ein kurzes Beispiel geben?

Eine andere Möglichkeit wäre, dass mir jemand zeigen könnte, wie ich bei folgendem Code rechts einen Inhalt einer Klasse zeigen kann:

Code:
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class Testy2 {

    private JList jList1;
    private JPanel jPanel1;
    private JTextArea jTextArea1;

    public Testy2() {
        initComponents();
    }

    private void initComponents() {
        JFrame f = new JFrame();
        jPanel1 = new JPanel();
        jList1 = new JList();
        jTextArea1 = new JTextArea();

        jList1.setModel(new AbstractListModel() {

            String[] strings = {"Item 1", "Item 2"};

            @Override
            public int getSize() {
                return strings.length;
            }

            @Override
            public Object getElementAt(int i) {
                return strings[i];
            }
        });
        jList1.addListSelectionListener(new ListSelectionListener() {

            @Override
            public void valueChanged(ListSelectionEvent evt) {
                jList1ValueChanged(evt);
            }
        });

        jTextArea1.setColumns(20);
        jTextArea1.setRows(5);

        jPanel1.add(jList1);
        jPanel1.add(jTextArea1);
         f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        f.add(jPanel1);
        f.pack();
        f.setVisible(true);
    }

    private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {
        //set text on right here
        String s = (String) jList1.getSelectedValue();
        if (s.equals("Item 1")) {
            jTextArea1.setText("You clicked on list 1");
        }
        if (s.equals("Item 2")) {
            jTextArea1.setText("You clicked on list 2");
        }
    }

    public static void main(String args[]) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                new Testy2();
            }
        });
    }
}

Also anstelle eines setText möchte ich eine Klasse zeigen, also beispielsweise Test().

Cheers,
Roobiks
 
Zuletzt bearbeitet:

JStein52

Top Contributor
Also anstelle eines setText möchte ich eine Klasse zeigen, also beispielsweise Test()
Was verstehst du darunter du willst "Test()" zeigen ? Du kannst die Attribute einer Objektinstanz darstellen. Und dazu musst du sie halt in geeignete Oberflächenelemente verpacken .... Meinst du so was ?
Aber wie passt der Inhalt zum Thema deines Threads ? Ich sehe weit und breit keine SplitPane und wo soll ein TreeSelectionEvent herkommen ?
 

Neue Themen


Oben