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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> найти ячейку по значению из JTextField, focus JTable JTextField 
V
    Опции темы
skif18
  Дата 19.5.2008, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 358
Регистрация: 17.5.2007
Где: Молдова, Кишинев

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



Есть JText Field & Jtable. При вводе значения в текстовое поле, позиционировать фокус на ячейке таблицы по этому значению... а то я че то торможу... Может кто знает.


--------------------

PM MAIL ICQ   Вверх
AntonSaburov
Дата 19.5.2008, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

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



Вообщем-то самое простое - тупо перебирать ячейки по значению - если конечно это не остортированный список.
Можно конечно искать прямо по TableModel, если она это позволяет.
PM MAIL WWW ICQ   Вверх
skif18
Дата 19.5.2008, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 358
Регистрация: 17.5.2007
Где: Молдова, Кишинев

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



AntonSaburov, а примерчик не подкинешь. ну чтоб сориентироваться по нему немного...


--------------------

PM MAIL ICQ   Вверх
AntonSaburov
Дата 19.5.2008, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

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



Если ищем по одному столбцу - например по номеру 1, то что-то вроде такого

Код

String find = "Ищем это";
int colNum = 1;  // Например в первом столбце
int row = -1; // Пока еще не нашли строку
JTable t = ... ;  // это наа таблица
int size = t.getRowCount();
for(int i=0; i<size; i++) {
   String s = t.getValueAt(i, colNum).toString();
   if(s.equals(find)) {
      row = i;
      break;
   }
}

// Ну теперь у тебя есть координаты нужной ячейки - colNum и row;


PM MAIL WWW ICQ   Вверх
skif18
Дата 20.5.2008, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 358
Регистрация: 17.5.2007
Где: Молдова, Кишинев

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



AntonSaburov, спасибо. получилось.

Добавлено через 13 минут и 43 секунды
AntonSaburov, это у меня есть. а как непосредственно фокус посадить на ячейку? чтоб она была выделена цветом к примеру...


--------------------

PM MAIL ICQ   Вверх
AntonSaburov
Дата 20.5.2008, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

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



Ну вообщем-то читаем API - JTable.changeSelection(...);

PM MAIL WWW ICQ   Вверх
skif18
Дата 21.5.2008, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 358
Регистрация: 17.5.2007
Где: Молдова, Кишинев

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



спасибо.


--------------------

PM MAIL ICQ   Вверх
skif18
  Дата 27.5.2008, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 358
Регистрация: 17.5.2007
Где: Молдова, Кишинев

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



Код

 int colNum = 6;  // Например в первом столбце
                        int row = -1; // Пока еще не нашли строку
                        int size = jTable1.getRowCount();
                        for(int i=0; i<=size-1; i++) {
                           String s = jTable1.getValueAt(i, colNum).toString().trim();
                           if(s.equals(y.trim())) {
                              row = i;
                             break;
                           }
                        }
                     jTable1.changeSelection(row, colNum, true, true);
                     
                     jTable1.requestFocus();


пошло. Спасибо за помощь.


--------------------

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

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

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


 




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


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

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