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

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

0

no u mnie tez nie przenosi cos namieszales.

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

0

Coś takiego:

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

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