Java Swing — ImageIcon в Jtable в JScrollPane

У меня есть JTable внутри JScrollPane. В одном из столбцов JTable отображаются ImageIcons. Все работает нормально, правда, у меня так в windows XP, при прокрутке рендеринг портится и изображения искажаются.

Это происходит только при прокрутке.

Скриншот: https://i.stack.imgur.com/NKqYT.png

Любая помощь высоко ценится!


person Andy Hin    schedule 18.08.2010    source источник
comment
Чтобы уточнить: работает ли он правильно на некоторых других операционных системах? Если да, то какие?   -  person Tikhon Jelvis    schedule 18.08.2010
comment
Да, на Windows 7 работает нормально.   -  person Andy Hin    schedule 18.08.2010


Ответы (2)


Добавьте прослушиватель корректировки на полосу прокрутки и перерисуйте таблицу в случае изменения значения корректировки.

scrollBar=new JScrollPane(table);
scrollBar.getVerticalScrollBar().addAdjustmentListener(this);

public void adjustmentValueChanged(AdjustmentEvent e) {
    table.repaint();

    }
person Emil    schedule 18.08.2010
comment
Это сработало. За исключением того, что мне пришлось перекрашивать таблицу, а не полосу прокрутки :) - person Andy Hin; 26.08.2010
comment
Я изменил код. Пожалуйста, подтвердите, если это то, что вы имели в виду. - person Emil; 26.08.2010

Изображения отображаются нормально на XP. Попробуйте пример из Настройки UIManager по умолчанию. Нажмите «По типу значения», а затем выберите «Значки» в поле со списком.

person camickr    schedule 18.08.2010