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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JTable и Enter 
:(
    Опции темы
Alexandr87
Дата 18.7.2005, 07:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

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



По умолчанию, в JTable когда нажимаешь enter происходит переход на следующую запись. Как сделать так, чтобы этого не происходило. Желательно без создания KeyListenera, я вот думаю мож есть какоендь свойство.
PM Jabber   Вверх
Alexandr87
Дата 19.7.2005, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

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



Лано тады хотябы с определением KeyListenera. Я сначала переносил выделение на одну строчку выше, но вот проблема когда выбрана первая строчка. Поможите люди добрые.
PM Jabber   Вверх
batigoal
Дата 19.7.2005, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



А HTML-тег <br> нельзя использовать?


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


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

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



чёт я не понаял - ты про что?

PM Jabber   Вверх
batigoal
Дата 20.7.2005, 09:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Так. Давай разберемся. Что тебе нужно делать при нажатии на Enter? Чтобы вообще не было никаких действий?


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


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

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



Нет, надо запустить метод, и передать ему как параметр, номер выделенной строки, но при этом выделение не должно переходить на следующую строчку
PM Jabber   Вверх
Gretchen
Дата 22.7.2005, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 25.8.2004
Где: München

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



Тебе нужно переопределить действие связанное с Key ENTER.
Как это точно делается я не помню. Но по моему это хорошо описано в "How to Use Key Bindings" http://java.sun.com/docs/books/tutorial/ui...keybinding.html
PM MAIL ICQ   Вверх
igon
Дата 23.7.2005, 01:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Если нужно, чтобы по нажатии Enter НИЧЕГО не происходило, то
Код

JTable table = new JTable();
...
InputMap im       = table.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
InputMap imParent = im.getParent(); 
imParent.remove(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0));
im.setParent(imParent);
im.remove(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0));
table.setInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT,im);


Для замены действия по умолчанию на твоё собственное (этот вариант действительно хорошо описан в ссылке Gretchen)

Код

JTable table = new JTable();
...
Action doSomeThing = new AbstractAction() {
    public void actionPerformed(ActionEvent e) {
              System.out.println("Enter pressed");
    }
};
table.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0), "doSomeThing");
table.getActionMap().put("doSomeThing",doSomeThing);





--------------------
Хотите поговорить об этом?
PM   Вверх
Alexandr87
Дата 26.7.2005, 06:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

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



Большое спасибо!
PM Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0848 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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