![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Swatch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
Добрый день.
Поделитесь советом, как сделать так, чтобы при выделении ячейки в таблице, ее содержимое (текст, цифры, даты) выделялось цветом? Ячейка редактируема по одному клику. надо, чтобы как только ее выбирали, то, если в ней есть текст, чтобы он выделялся цветом. Не сама ячейка, а именно текст. |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
попробуй для начала setSelectionForeground, если не то, то нужно свой рендерер писать
|
|||
|
||||
| Swatch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
придется рендерер писать:( потому что setSelectionForeground уже попробовала
Добавлено через 45 секунд а как в рендерере указать, чтобы текст выделился, не подскажите? |
|||
|
||||
| Swatch |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
Написала вот так:
На jTableMousePressed написала:
Но текст почему-то не выделяется:( В чем млжет быть проблема??? |
||||
|
|||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Ой, мне кажется что я вас обманул.
Если текст должен быть подсвечен при редактировании, значит нужен Editor, а не Renderer... |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Вот что получилось в простейшем случае:
|
|||
|
||||
| Swatch |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
А можно пример Editor-а?
Оставила то же самое, только TableCellRenderer исправила на TableCellEditor. Вы дает ошибку, что MyTableCellEditor.java:25: classes.MyTableCellEditor is not abstract and does not override abstract method removeCellEditorListener(javax.swing.event.CellEditorListener) in javax.swing.CellEditor :( В чем тут дело? И потом, как устанавливать Editor и когда? Подойдет на jTableMouse Click? Вот так можно:?
Добавлено через 9 минут и 54 секунды То, что вы написали, работает. Только мне нужно, чтобы не текст изменял цвет, а чтобы то, что в ячейке, выделялось (как когда выделяют текст, чтобы удалить). Я написала вот так:
Но этот код не работает. :( как-нибудь можно заставить его работать??? |
||||
|
|||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
А если так попробовать?
|
|||
|
||||
| Swatch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
да, это помогло.
Только теперь появилась проблема. в первый столбец можно записывать только Double. если пытаться вписать туда что-то другое и потом покинуть ячейку, то программа падает с ошибкой: java.lang.IllegalArgumentException: Cannot format given Object as a Number. как сделать так, чтобы введенный неправильный текст выделялся, фокус оставался на этой ячейке? как вообще проверить эту ошибку? сейчас фокус переходит той ячейке, на которую нажали, независимо от того, упала ошибка или нет... |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |