Swing , pobranie tekstu z JTextField

0
public int getFromText(JTextField t1){

        t1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String StrId=t1.getText().trim();
                int id=Integer.parseInt(t1.getText().trim());
            }
        });
         return id ;
    }

Wyczytałem że nie da się wyciagnać id. Teraz moje pytanie . Jak innaczej to rozegrać aby się dało. W programie mam 4 JTextField i chcę z nich pobrać dane a następnie zapisać je w SQL server. A do tego potrzebuje wyciągnąć to co zostanie napisane w JTextField.

0

Nie musisz dodawac żadnego actionlistenera do tego pola. Po prostu pobierz t1.getText().

0
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel panel=new JPanel();
        panel.setLayout(new GridLayout());
        JTextField t1=new JTextField();


                String str=t1.getText();
                int id=Integer.parseInt(t1.getText());
                System.out.println(id);

        panel.add(t1);
        getContentPane().add(panel);

        pack();
        setSize(200,200);
        setVisible(true);

Jak zrobie bez actionListenner to wywala bląd.
Exception in thread "main" java.lang.NumberFormatException: For input string: ""

0

Twój problem wynika z tego, że próbujesz coś całkiem dziwnego zrobić. Wyświetlamy 4 pola tekstowe - czytamy ich wartości i ładujemy do bazy.
Jakkolwiek użytkownk nie ma żadnej szansy nic wpisać w te pola.

Dodaj jakiś przycisk typu zróbTo podepnij do niego actionListenera (to już umiesz), a w środku tego listenera odczytaj normalnie te pola tekstowe.

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