powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Отловить нажите Enter в jTextField
6 сообщений из 6, страница 1 из 1
Отловить нажите Enter в jTextField
    #37744503
LeAnnAlice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет)
Проблема однако никакая, но я не понимаю, как это организовать((( Полдня убила, ничего не выходит.
Надо, чтобы после нажатия Enter в jTextField происходила цепочка событий. Неужели через jTextField1.чего-то там не такого, что отлавливало бы Enter???
ActionListener и прочее по кускам кода я понять не могу, куда это вообще писать?
Заранее благодарю...)
...
Рейтинг: 0 / 0
Отловить нажите Enter в jTextField
    #37744565
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LeAnnAlice,

А куда пробовали писать? У JTextEdit есть метод addActionListener вот туда и пихать
Код: java
1.
2.
3.
4.
5.
6.
7.
sampleEdit.addActionListener(new ActionListener(){
    
   public void actionPerformed(ActionEvent e){
      //Твой код здесь
   } 

});
...
Рейтинг: 0 / 0
Отловить нажите Enter в jTextField
    #37744614
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Отловить нажите Enter в jTextField
    #37745176
Oleg N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
sampleEdit1 = new JTextField();

sampleEdit1.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
				
        int key = e.getKeyCode();
		        
        if (key == KeyEvent.VK_ENTER) {		// нажата клавиша - Enter
             //Твой код здесь

        }
     }
});
...
Рейтинг: 0 / 0
Отловить нажите Enter в jTextField
    #37745190
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У JTextField ENTER замаплен на JTextField.notifyAction - JTextField.postActionEvent()
Для JTextField такие манипуляции нафиг не нужны.
...
Рейтинг: 0 / 0
Отловить нажите Enter в jTextField
    #37765012
LeAnnAlice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С этим разобралась)) Благодарю))
Зато теперь что-то поинтересней...

Работаю с массивом чисел (динамический). У меня на форме меню с действиями.
1) Добавляем элемент
Нужно: если массив ещё не создан, то работаем со стандартным (заданным заранее), если создан, работаем с ним.
Что происходит: тут два варианта.
Если массив не создан ещё, подгружается стандартный массив. Всё ОК, однако, при нажатии любой другой кнопки меню и попытки выполнения её (кнопки) назначения, программа продолжает выполнять добавление.
Если массив уже создан, то добавление происходит. Но не в тот массив, который есть. То есть, например, если перед добавлением элемента сначала нажали "работать с новым массивом" и ввели его с клавиатуры - введенное в поле для добавления значение воспринимается как новый массив; если до добавления массив сгенерировали - то число воспринимается как номер элементов для генерации. Число же при этом добавляется. Та же примерно фигня после нажатия кнопочки: генерация работает нормально, а ввод нового массива считается выполнением добавления элемента оО
2) Удаляем элемент. Ситуация та же((

Собственно код. Хотя тут, наверное, надо всё смотреть...
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // Добавить элемент
        jLabel2.setVisible(false);
        jLabel3.setVisible(false);
        jLabel4.setVisible(false);
        jLabel5.setVisible(false);
        jLabel1.setVisible(true);
        jLabel1.setText("Enter the element you want to add");
        jTextField1.setVisible(true);
        jTextField1.setText(null);
        jTextField1.addKeyListener(new KeyAdapter() {

            @Override
            public void keyPressed(KeyEvent e) {
                int key = e.getKeyCode();

                if (key == KeyEvent.VK_ENTER) {
                    jLabel2.setVisible(true);
                    if (m.isEmpty()) {
                        m.Default();
                    }
                    jLabel2.setText("Original array: " + m.STROKA());
                    m.addEl(Integer.parseInt(jTextField1.getText()));
                    jLabel3.setVisible(true);
                    jLabel3.setText("New array (with added element): " + m.STROKA());
                }
            }
        });
    }              



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // Удалить элемент
        jLabel2.setVisible(false);
        jLabel3.setVisible(false);
        jLabel4.setVisible(false);
        jLabel5.setVisible(false);
        jLabel1.setVisible(true);
        jLabel1.setText("Enter the number of the element you want to delete");
        jTextField1.setVisible(true);
        jTextField1.setText(null);
        jTextField1.addKeyListener(new KeyAdapter() {

            @Override
            public void keyPressed(KeyEvent e) {
                int key = e.getKeyCode();
                if (key == KeyEvent.VK_ENTER) {
                    jLabel2.setVisible(true);
                    if (m.isEmpty()) {
                        m.Default();
                    }
                    if ((Integer.parseInt(jTextField1.getText())) < m.getSize()) {
                        jLabel2.setText("Original array: " + m.STROKA());
                        m.delEl((Integer.parseInt(jTextField1.getText())) - 1);
                        jLabel3.setVisible(true);
                        jLabel3.setText("New array (with deleted element): " + m.STROKA());
                    } else {
                        jLabel2.setVisible(true);
                        jLabel2.setText("There's no element with this index. Try again");
                    }
                }
            }
        });
    }      



+1. В jTextField запретить ввод всего, кроме цифр и пробелов, или пофиг на ввод, но отслеживать это дело и выдавать "Не могу" после нажатия Enter при любых других введенных символах, помимо цифр и пробелов.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Отловить нажите Enter в jTextField
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]