JTextField i zablokowanie przechodzenia kursora

JTextField i zablokowanie przechodzenia kursora
0

Mam pare JTextField'ow na formie. Do niektorych jest przypisany KeyListener ktory wykonuje pewna akcje jesli sie wcisnie enter. Jak sie wcisnie enter to przechodzi kursor do nastepnego. Jak to zablokowac? Tak by kursor nie przechodzil do nastepnego obiektu?

0

Zmyślasz kolego. Standardowo obiekty JTextField tak się nie zachowują. Widocznie twój KeyListener przenosi kursor. Zobacz czy w obsłudze zdarzenia "nacisnął Enter" nie ma przeniesienia fokusu - metoda requestFocus().

0

Jesli JTextField nie ma KeyListener'a to po nacisnieciu enter nie przenosi kursora do nastepnego. Ale jak ma przypisanego nawet PUSTEGO KeyListenera to przenosi karetke do nastepnego obiektu.

A z tym zmyslaniem to sobie daruj.

0

nie przenosi

Kopiuj
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class C extends JFrame implements KeyListener
{
    private JTextField tf1=null;
    private JTextField tf2=null;
    //------------------------
    public static void main(String[] args)
    {
        new C();
    }
    //------------------------
    public C()
    {
        setLayout(new FlowLayout());
        tf1=new JTextField(20);
        add(tf1);
        tf1.addKeyListener(this);
        tf2=new JTextField(20);
        tf2.addKeyListener(this);
        add(tf2);
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        setLocationRelativeTo(null);
    }
    //------------------------
    public void keyPressed(KeyEvent ae)
    {
    }
    //------------------------
    public void keyTyped(KeyEvent ae)
    {
    }
    //------------------------
    public void keyReleased(KeyEvent ae)
    {
    }
}

pozdrawiam

Freakman
  • Rejestracja:ponad 18 lat
  • Ostatnio:ponad 7 lat
0

no u mnie tez nie przenosi cos namieszales.


play hard..go pro.
0

Napisałem już kilkanaście programów, w których musiałem specjalnie oprogramować KeyListenera, żeby Enter przenosił do innego pola tekstowego. Co więcej trzeba wskazać do którego pola ma byc przeniesiony fokus. To nowe pole nie ma nic wspólnego z tym, do którego przenosi klawisz Tab.
pozdrawiam

0

A możesz przybliżyć jak zparogramowałeś KeyListenera, żeby Enter przenościł kursor do innego pola tekstowego??

bogdans napisał(a):

Napisałem już kilkanaście programów, w których musiałem specjalnie oprogramować KeyListenera, żeby Enter przenosił do innego pola tekstowego. Co więcej trzeba wskazać do którego pola ma byc przeniesiony fokus. To nowe pole nie ma nic wspólnego z tym, do którego przenosi klawisz Tab.
pozdrawiam

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Coś takiego:

Kopiuj
    public void keyReleased(KeyEvent e)
    {
        if (e.getKeyCode() == KeyEvent.VK_ENTER)
        {
             poleDocelowe.requestFocus();
        }
    }

To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.