Как я отметил в своем комментарии, ваша проблема хорошо решается путем создания SSCCE .На самом деле, я сделал это сам, используя ваш фрагмент кода и часть своего кода:
import java.awt.Dimension;
import javax.swing.*;
public class Foo001 {
private static void createAndShowUI() {
DefaultListModel model = new DefaultListModel();
JList sList = new JList(model);
for (int i = 0; i < 100; i++) {
model.addElement("String " + i);
}
sList.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
sList.setVisibleRowCount(-1);
sList.setLayoutOrientation(JList.HORIZONTAL_WRAP);
JFrame frame = new JFrame("Foo001");
frame.getContentPane().add(new JScrollPane(sList));
frame.getContentPane().setPreferredSize(new Dimension(400, 300));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
createAndShowUI();
}
});
}
}
Поскольку я не могу воспроизвести вашу проблему с моим кодом, я должен заключить, что ваша проблема лежит в другом месте кода, который выне показано нам.Опять же, если вы сможете создать и опубликовать свой SSCCE, мы, вероятно, сможем помочь ответить на ваш вопрос, но до тех пор я не уверен, сможем ли мы даже догадаться, в чем проблема.