Мой jlist - это тот, в котором ячейки квадратные и имеют фиксированные размеры, и порт просмотра заполняется ими, поэтому количество столбцов (и, я думаю, строки) действительно может измениться.
Мой код для этого довольно сложный:
http://code.google.com/p/bookjar-utils/source/browse/BookJar-utils/src/util/swing/components/ImageList.java
То, что я хочу сделать, это разрешить различные движения клавиатуры с помощью клавиш со стрелками. Вместо того, чтобы использовать только ↑ и ↓ для перемещения строк вверх и вниз, также разрешите ← и →, если выбранная ячейка перекрывает западный или восточный края области просмотра .
Должен ли я просто рассчитать, сколько ячеек помещается в "строку", и добавить список ключей для стрелок, который вступает во владение, когда по краям, когда поведение по умолчанию, кажется, ничего не делает?
В этом отношении, где определяется исходное поведение? клавиши ← и → позволяют перемещаться подряд, если они не находятся на краях ряда.