Cykliczne wyświetlanie komunikatu JOptionPane po naciśnięciu Enter

0

Cześć.
Ma ktoś pomysł co trzeba zmienić by komunikat zniknął po jednym kliknięciu przycisku Enter (alternatywa w postaci spacji nie wchodzi w gre)?

import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

public class FF {

    public static void main(String[] args) {
	final JFrame frame = new JFrame();
	JTextField textField = new JTextField();
	textField.addKeyListener(new KeyAdapter() {
	    @Override
	    public void keyReleased(KeyEvent arg) {
		super.keyReleased(arg);
		if (arg.getKeyCode() == KeyEvent.VK_ENTER) {
		    arg.consume();
		    JOptionPane.showMessageDialog(frame, "bla bla bla");
		}
	    }
	});
	frame.getContentPane().add(textField);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setLocationRelativeTo(null);
	frame.setSize(200, 200);
	frame.setVisible(true);
    }
}
0

Zamień keyReleased na keyPressed.

0
bogdans napisał(a):

Zamień keyReleased na keyPressed.

Sprawdziłeś? u Ciebie działa?

0

Tak.

        textField.addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent arg) {
                if (arg.getKeyCode() == KeyEvent.VK_ENTER) {
                    JOptionPane.showMessageDialog(frame, "bla bla bla");
                }		
            }
        });
0
bogdans napisał(a):

Tak.

        textField.addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent arg) {
                if (arg.getKeyCode() == KeyEvent.VK_ENTER) {
                    JOptionPane.showMessageDialog(frame, "bla bla bla");
                }		
            }
        });

Dzięki. Nie zmieniłem super.keyReleased(arg);

1 użytkowników online, w tym zalogowanych: 0, gości: 1