Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java GUI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/10: Рейтинг темы: голосов - 10, средняя оценка - 5.00
waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
#1

Закраска отдельных ячеек в таблице JTable

18.02.2014, 16:33. Просмотров 2001. Ответов 6
Метки нет (Все метки)

Всем привет Продолжаю изучение JTable и на этот раз подводным камнем встал, казалось бы, на первый взгляд, простой, вопрос о том как покрасить отдельные ячейки таблицы... Признаюсь, гуглил, но без результата.
Вообще как я понимаю требуется взять отедельный cell и у него должен быть метод на установку фона, НО такого нету.... Что делать, как быть? господа хорошие)

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2014, 16:33
Ответы с готовыми решениями:

Произворльная раскраска ячеек JTable в зависимости от значений которых нет в видимой таблице
Всем привет! Раскрасить ячейки в зависимости от данных имеющихся в этих...

Swing. Увеличение числа ячеек в JTable
Всем добрый день! Есть проблема, которая пока не решается. Программа должна...

jTable - Таблица в таблице
здравствуйте Мне нужно создать таблицу в которой ячейки второго столбца...

JTable: как сложить содержимое двух ячеек?
Подскажите пожалуйста, как добавить(сложить) две ячейки jTable1.getValueAt(0,...

Как изменить порядок прохождения ячеек в JTable?
Привет всем. Подскажите, пож., как изменить порядок прохождения ячеек в...

6
Skipy
1996 / 1419 / 91
Регистрация: 25.11.2010
Сообщений: 3,611
18.02.2014, 17:13 #2
0
waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
04.03.2014, 15:55  [ТС] #3
Собстно так ничего и не понял... Только то что для достижения результата приходится проводить манипуляции с рендером.
0
dwarf
5 / 5 / 1
Регистрация: 04.03.2014
Сообщений: 20
05.03.2014, 13:33 #4
Значит, приходится. Или наследоваться от JTable и писать удобные методы.
Я делал следующее:
В классе формы устанавливаем рендерер
Java
1
2
TableInfo tableInfo = new JTable();
tableInfo.setDefaultRenderer(Object.class, new TableInfoRenderer());
И сам класс рендерера:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package renderers;
import java.awt.Color;
import java.awt.Component;
 
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
 
public class TableInfoRenderer extends DefaultTableCellRenderer {
    @Override
    public Component getTableCellRendererComponent(JTable table, Object value,
            boolean isSelected, boolean hasFocus, int row, int column) {
        JLabel c = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, false, row, column);
 
        if(column==1) c.setHorizontalAlignment(CENTER);
        else  c.setHorizontalAlignment(LEFT);
        
        if(row % 2 == 0) c.setBackground(Color.green);
        else c.setBackground(new JLabel().getBackground());
        return c;
    }
}
Ничего сложного, просто выравниваю значения второй колонки по центру и меняю фон у каждой второй строки.
Закраска отдельных ячеек в таблице JTable
1
waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
11.03.2014, 15:00  [ТС] #5
Спасибо большое! Работает!) А вот еще такой вопрос... каким образом можно задать цвет HTML кодом?
0
dwarf
5 / 5 / 1
Регистрация: 04.03.2014
Сообщений: 20
11.03.2014, 16:09 #6
Цитата Сообщение от waip Посмотреть сообщение
... каким образом можно задать цвет HTML кодом?
если под html-кодом имеется ввиду запись типа #RRGGBB, то используй метод Color.decode(String)
для приведённого мною фрагмента - замени 18-ую строку на
Java
1
if(row % 2 == 0) c.setBackground(Color.decode("#00FF00"));
результат будет аналогичным.
1
gen30
0 / 0 / 1
Регистрация: 07.04.2014
Сообщений: 10
27.03.2017, 07:06 #7
Интересно, а почему при отображении данных с CheckBox фон не закрашивается? И как быть в этом случае?
0
27.03.2017, 07:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2017, 07:06

Как скрыть колонку в таблице JTable?
Как скрыть колонку в таблице? Поставить ширину в 0 не помогает, потому что она...

Как сделать невидимыми несколько столбцов в таблице (JTable), не по по порядку
Вот 2 класса. 1-й это фрейм, который отображает таблицу package...

TableView Получить значения из ячеек в таблице, и присвоить эти значения переменным, а потом получить их сумму
есть код таблицы из примера с оф сайта docs.oracle как можно получить и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru