http://kmlinux/~culik/wiki jList1.setModel(new MyModel ()); package example; import javax.swing.*; import javax.swing.event.ListDataListener; public class MyModel implements ListModel { String [] data = { "Abc", "Xyz" }; @Override public int getSize() { return data.length; } @Override public Object getElementAt(int index) { return data [index]; } @Override public void addListDataListener(ListDataListener l) { } @Override public void removeListDataListener(ListDataListener l) { } } String a = { "Hello", "Java" }; jList1.setModel(new MyModel (a)); package example; import javax.swing.*; import javax.swing.event.ListDataListener; // public class MyModel extends AbstractListModel public class MyModel extends Object implements ListModel { private String [] data; public MyModel (String [] param) { data = param; } @Override public int getSize() { return data.length; } @Override public Object getElementAt(int index) { return data [index]; } @Override public void addListDataListener(ListDataListener l) { } @Override public void removeListDataListener(ListDataListener l) { } } Object [] a = { "Hello", "Java", 1, new Abc(1,2), this }; jList1.setModel(new MyModel (a)); package example; public class Abc { private int x, y; public Abc (int x0, int y0) { x = x0; y = y0; } @Override public String toString () { return "Ja jsem Abc (x=" + x + ", y=" + y +")"; } } package example; import javax.swing.*; import javax.swing.event.ListDataListener; // public class MyModel extends AbstractListModel public class MyModel extends Object implements ListModel { private Object [] data; public MyModel (Object [] param) { data = param; } @Override public int getSize() { return data.length; } @Override public Object getElementAt(int index) { return data [index]; } @Override public void addListDataListener(ListDataListener l) { } @Override public void removeListDataListener(ListDataListener l) { } }