Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
Вопрос по Java. |
Философия, технологии, алгоритмы! |
|
Опции темы |
21.07.2007, 10:50 | #1 |
Форумец
Сообщений: 15
Регистрация: 18.06.2007
Не в сети |
Вопрос по Java.
Народ я не опытен в Java и только учу, поэтому прошу подсказать как быть.Необходимо сделать табл с рисунками(иконками) в Java. Я делаю это так:
public class Grid extends JApplet { Icon im = new ImageIcon("C:/workspace/microbs/image/face0.gif"); Icon in = new ImageIcon("C:/workspace/microbs/image/face1.gif"); Generalization gen = new Generalization(10,10); class DataModel extends AbstractTableModel { Icon[][] data ; public DataModel(int n) { data = new Icon[n][n]; } public int getColumnCount() { return data[0].length; } public int getRowCount() { return data.length; } public Icon getValueAt(int row, int col) { return data[row][col]; } public void setValueAt(Icon val, int row, int col) { data[row][col] = val; // Указывает на появление изменений: fireTableDataChanged(); } } я хотел всю работу производить через setValueAt(думаю это понятно) Но самое обидное это не работает(((выводит в табл только АДРЕСА этих рисунков. Я пробовал так объявить JLabel [][] data = new JLabel[n][n];и потом в методе setValueAt писал так data[row][col].setIcon(val); и это не работало...ошибка происходила на стадии компиляции. |
24.07.2007, 09:43 | #2 |
Бывалый форумец
Сообщений: 687
Регистрация: 05.08.2005
Не в сети |
у меня сейчас нет под рукой Явы и доков.
Я уже не очень помню работу с JTable, но кажется там каждая ячейка представляет собой компонент JPanel, и именно на его поверхности нужно рисовать. Может примитивным draw, посмотри в доках. Т.е. я не знаю, что собой представляет твой setIcon (это из либы или ты написал), но если по твоему замыслу в результате этого присваивания должна появиться картинка в ячейке таблицы - то он должен не только присваивать ссылку на icon, но и отрисовывать картинку на поверхности ячейки. |