JList mi się nie wyświetla

Odpowiedz Nowy wątek
2011-12-23 14:17
dziubo1
0

To bardzo irytujące, bo męczę się z tym dłuższy czas, a nie wiem jak to rozwiązać. Choć program nie jest jeszcze skończony to GUI powinno już chodzić.
Program jest w pełni kompilowalny, zawiera na razie jedną klasę.
Może ktoś z was odgadnie, dlaczego JList mi się nie wyświetla? Wielkie Merry Christmas dla każdego, kto będzie mi w stanie pomóc :)

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BorderFactory;
import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.ListModel;
import javax.swing.ListSelectionModel;
import javax.swing.ScrollPaneConstants;
import javax.swing.SwingUtilities;
import javax.swing.border.Border;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class Fasada extends JFrame{

        private JButton JB_Aa;
        private JButton JB_abc;
        private JButton JB_def;
        private JButton JB_ghi;
        private JButton JB_jkl;
        private JButton JB_mno;
        private JButton JB_pqr;
        private JButton JB_tuv;
        private JButton JB_wxyz;
        private JButton JB_Wyczysc;
        private JButton JB_Dodaj;
        private JButton JB_Usun;
        private JPanel pr_panel;
        private JPanel le_panel;

        private DefaultListModel DLM_List;
        private JList JL_Lista;

        private JTextArea JTA_wpisz;

    public Fasada()
    {

        ActionListener al = new ActionListener() {  
        public void actionPerformed(ActionEvent e) {
            if(e.getSource()==JB_Dodaj){

            }
    }};

    setSize(480, 500);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   

    pr_panel = new JPanel();
    pr_panel.setPreferredSize(new Dimension(getWidth()/2,getHeight()));
    pr_panel.setBackground(Color.blue);
    pr_panel.setLayout(null);

    le_panel = new JPanel();
    le_panel.setLayout(new FlowLayout());
    le_panel.setPreferredSize(new Dimension(getWidth()/2,getHeight()));
    le_panel.setBackground(Color.red);
    Border compound;
    compound = BorderFactory.createMatteBorder(20, 0, 0, 20, Color.green);
    le_panel.setBorder(compound);

    DLM_List = new DefaultListModel();
    JL_Lista = new JList(DLM_List);
    JL_Lista.setPreferredSize(new Dimension(le_panel.getWidth(),le_panel.getHeight()));
    Border brd = BorderFactory.createMatteBorder(1, 1, 2, 2, Color.black);
    JL_Lista.setBorder(brd);
        for(int i=0; i<4; i++)
            DLM_List.addElement("Element: "+i);

//
/*    JL_Lista = new JList();
    JL_Lista.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    JScrollPane listScrollPane = new JScrollPane(JL_Lista);
*/    

    JTA_wpisz = new JTextArea();
    JTA_wpisz.setBounds(20, 20, 200, 40);

    //Tworzenie wszystkich klawiszy okna i nadanie im parametrów

    JB_Dodaj = new JButton("+");
    JB_Dodaj.setBounds(240, 180, 50, 20);
    JB_Dodaj.addActionListener(al);

    JB_Usun = new JButton("-");
    JB_Usun.setBounds(290, 180, 50, 20);
    JB_Usun.addActionListener(al);

    JB_Wyczysc = new JButton("Czyść");
    JB_Wyczysc.setBounds(340, 180, 70, 20);
    JB_Wyczysc.addActionListener(al);

    JB_Aa = new JButton("A/a");
    JB_Aa.setBounds(20, 80, 60, 20);
    JB_Aa.addActionListener(al);

    JB_abc = new JButton("abc");
    JB_abc.setBounds(20, 120, 60, 20);
    JB_abc.addActionListener(al);

    JB_def = new JButton("def");
    JB_def.setBounds(85, 120, 60, 20);
    JB_def.addActionListener(al);

    JB_ghi = new JButton("ghi");
    JB_ghi.setBounds(150, 120, 60, 20);
    JB_ghi.addActionListener(al);

    JB_jkl = new JButton("jkl");
    JB_jkl.setBounds(20, 150, 60, 20);
    JB_jkl.addActionListener(al);

    JB_mno = new JButton("mno");
    JB_mno.setBounds(85, 150, 60, 20);
    JB_mno.addActionListener(al);

    JB_pqr = new JButton("pqr");
    JB_pqr.setBounds(150, 150, 60, 20);
    JB_pqr.addActionListener(al);

    JB_tuv = new JButton("tuv");
    JB_tuv.setBounds(52, 180, 60, 20);
    JB_tuv.addActionListener(al);

    JB_wxyz = new JButton("wxyz");
    JB_wxyz.setBounds(117, 180, 65, 20);
    JB_wxyz.addActionListener(al);

    add(pr_panel,BorderLayout.WEST);    
        pr_panel.add(JTA_wpisz);
        //pr_panel.add(JB_Dodaj);
        //pr_panel.add(JB_Usun);
        //pr_panel.add(JB_Wyczysc);
        pr_panel.add(JB_Aa);
        pr_panel.add(JB_abc);
        pr_panel.add(JB_def);
        pr_panel.add(JB_ghi);
        pr_panel.add(JB_jkl);
        pr_panel.add(JB_mno);
        pr_panel.add(JB_pqr);
        pr_panel.add(JB_tuv);
        pr_panel.add(JB_wxyz);      
    add(le_panel);
        le_panel.add(JL_Lista);

    setVisible(true);

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

}
edytowany 1x, ostatnio: madmike, 2016-12-13 18:26

Pozostało 580 znaków

2011-12-23 16:37
bo
0

Dostałeś już odpowiedź. Problem z scrollpane

Pomysł, żeby rozmiar komponentu był zerowy (JL_Lista.setPreferredSize(new Dimension(le_panel.getWidth(),le_panel.getHeight()));) nie jest rozsądny, a kolory są okropne. - bogdans 2011-12-23 17:11

Pozostało 580 znaków

2011-12-23 17:48
dziubo1
0
bo napisał(a)

Dostałeś już odpowiedź. Problem z scrollpane

Wielkie Marry christmas! Nie iwdziałem ostatniego postu.
Wątek uważam za zakończony.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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