Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отображение JList в ячейке JTable 
:(
    Опции темы
dsp
Дата 30.9.2005, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 30.9.2005

Репутация: нет
Всего: нет



Подскажите как отобразить список JList в ячейке JTable.

Есть класс.
Код

public class ListRenderer extends DefaultTableCellRenderer {

....
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
        String[] items = (String[])value;
        JList list = new JList(items);
        return list;
    }
}

....
table.getColumn("Attachments").setCellRenderer(new ListRenderer());


В итоге вместо списка отображается одно значение.

В чем может быть причина

Это сообщение отредактировал(а) Lamer George - 30.9.2005, 11:35

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  pict.jpg 1,94 Kb
PM MAIL   Вверх
batigoal
Дата 30.9.2005, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 7
Всего: 151



Вот тут есть готовый пример, как сделать в ячейке ComboBox:
http://java.sun.com/docs/books/tutorial/ui...e.html#combobox

Для JList будет аналогично.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
dsp
Дата 30.9.2005, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 30.9.2005

Репутация: нет
Всего: нет



Это хорошо, но для JList нет конструктора DefaultCellEditor.
Есть для однострочных компонентов типа JCheckBox, JComboBox, JTextField.
Поэтому и возникла необходимость в создании наследника для JList-а.
Скажите лучше, у кого-нибудь получалось отобразить или нет что-нибудь многострочное в ячейке JTable?
PM MAIL   Вверх
batigoal
Дата 30.9.2005, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 7
Всего: 151



Там же есть и про этот случай:
http://java.sun.com/docs/books/tutorial/ui...ble.html#editor

Утверждается, что
Цитата
Your cell editor class needs to define at least two methods — getCellEditorValue and getTableCellEditorComponent


И приведен пример с написанием своего эдитора.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
LSD
Дата 30.9.2005, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 38
Всего: 538



Ты пробовал увеличить высоту строк?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
batigoal
Дата 30.9.2005, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 7
Всего: 151



Только про отображение - это скорее к рендереру, а не к едитору.
http://java.sun.com/docs/books/tutorial/ui...e.html#renderer


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
dsp
Дата 30.9.2005, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 30.9.2005

Репутация: нет
Всего: нет



2LSD:
Спасибо, действительно изменение высоты строки помогло.

2Lamer George:
Да только рендеринг, ничего редактировать не надо было.
PM MAIL   Вверх
LSD
Дата 30.9.2005, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 38
Всего: 538



Кстати а зачем нужен JList если он используется только как рендерер? Ведь таким макаром скролл работать все равно не будет, а несколько строк текста можно отобразить и попроще.
Код
String text = "<html>Row 1<br>Row 2<br>Row 3</html>";
JTable table = new JTable(new String[][] { {text, text}, {text, text} }, new String[] {"Column 1", "Column 2"});
table.setRowHeight(50);

JFrame frame = new JFrame("Ьгд");
frame.getContentPane().add(new JScrollPane(table));
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);



--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.1676 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.