Avatar billede halfblind Nybegynder
18. maj 2001 - 23:21 Der er 4 kommentarer og
1 løsning

JButton som elementer i JList

Kan det lade sig gøre?
Avatar billede logical Nybegynder
18. maj 2001 - 23:42 #1
Ja, det kan det sagtens.

En JList bar en DefaultListCellRenderer som ListCellRenderer. Det er default en label. I stedet kan du lave en ListCellRenderer, som returnerer en JButton:
    JFrame f = new JFrame(\"Hej\");
    String[] value = { \"Hej\", \"Verden\" };
    JList list = new JList(value);
    list.setCellRenderer(new ListCellRenderer() {
        public Component getListCellRendererComponent(
            JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
            JButton b = new JButton(value.toString());
            return b;
        }
    });
       
    f.getContentPane().add(new JScrollPane(list));
    f.addWindowListener(new dk.logical.gui.CloseAdapter());
    f.setSize(300,300);
    f.setVisible(true);

Men du skal vide, at det kun er en visualisering af en JButton, den fungerer IKKE som en JButton. Hvis du vil have en liste med JButtons, vil jeg foreslå en hurtigere løsning med et JPanel med BoxLayout fyldt med JButtons. De kunne så evt. være indlejret i et JScrollPane.
Avatar billede logical Nybegynder
18. maj 2001 - 23:43 #2
Og svaret var: Ja, men....
Avatar billede halfblind Nybegynder
19. maj 2001 - 00:00 #3
tak for det......:-)
Avatar billede halfblind Nybegynder
19. maj 2001 - 00:01 #4
logical.....
må man høre hvad du laver til daglig siden du er så god til java....
Avatar billede logical Nybegynder
19. maj 2001 - 00:05 #5
Java :-)
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