Я пытаюсь заполнить JList
предметами из ArrayList<String[]>
. Каждый String[]
имеет форму ["I", "am", "an", "example"], и я ничего не могу сделать о форме ввода - ее от третьей стороны. Я бы хотел просто JList
с каждым String[]
, расширенным на другой строке. Однако, когда я использую следующий код, первые несколько символов обрезаются с левой стороны от JList
- его срезающий средний символ, поэтому проблема с пикселями не является символом.JList display String [] текст отключен
Класс ниже установлен как область содержимого на JFrame
в другом месте программы, я не думал, что нужно было скопировать это здесь, но если бы это было полезно, я мог бы его обрезать и поставить для просмотра.
public class BookScreen extends JPanel{
ListSelectionModel lsm;
ArrayList <String> atList;
JList atBox;
MainForm mf;
public BookScreen (MainForm mf){
//I'm aware this bit is clunky, it was a quick and dirty to test it displays
//properly before I cleaned it up
ArrayList<String[]> books= mf.getWorld().getBooks();
atList=new ArrayList();
for (String[] s:books){
atList.add(Arrays.toString(s));
}
//end clunky
atBox = new JList(atList.toArray());
lsm = atBox.getSelectionModel();
lsm.addListSelectionListener(new BookScreen.AtListSelectionHandler());
atBox.setVisibleRowCount(-1);
atBox.setLayoutOrientation(JList.HORIZONTAL_WRAP);
atBox.setLocation(0, 0);
atBox.setVisible(true);
this.add(atBox);
this.setVisible(true);
}
class AtListSelectionHandler implements ListSelectionListener{
@Override
public void valueChanged(ListSelectionEvent e){
}
}
}
Скриншот проблемы:
Что делать, если вы добавили список в JScrollPane? this.add (новый JScrollPane (atBox))? – StanislavL
Что вы добавляете в BookScreen? – Joni
Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). –