Jak połączyć funkcje wizualną z funkcją do pobierania danych

0

Witam serdecznie,

Piszę aplikację, gdzie klient podaje numer projektu, a program sprawdza czy w bazie danych jest etc. Pod względem technicznym działa.
Jednak mam mały problem przy wizualizacji. Stworzyłam sobie klasę(która nie jest dokończona z mojej niewiedzy), gdzie tworzy sobie komponenty i oprawke graficzną :

public class Components {

    JTextField area;

    public void createComponents() {
        JFrame frame = new JFrame("Program do weryfikacji danych");
        JPanel panelMain = new JPanel();
        JLabel label1 = new JLabel("Podaj numer projektu:");

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        area = new JTextField(20);
        JButton confirmButton = new JButton("Zatwierdź");
        confirmButton.addActionListener(new ConfirmButtonListener());

        panelMain.add(label1);
        panelMain.add(area);
        panelMain.add(confirmButton);

        frame.getContentPane().add(BorderLayout.CENTER, panelMain);
        frame.setSize(400, 90);
        frame.setVisible(true);
    }

    public class ConfirmButtonListener implements ActionListener {

        public void actionPerformed(ActionEvent ev) {
            try {
           
                    // nie wiem co tu dodać
            } catch (Exception ex) {
                ex.printStackTrace();
            }
            area.setText("");
            area.requestFocus();
        }
    }
}

Oraz stworzyłam klasę, która pobiera dane wejsciowe od użytkownika :

public class GetNumber {

    public String getNumberProject(String communique) {
        String date = null;
        System.out.print(communique + "  ");
        try {
            BufferedReader is = new BufferedReader(
                    new InputStreamReader(System.in));
            date = is.readLine();
            if (date.length() == 0) {
                return null;
            }
        } catch (IOException e) {
            System.out.println("IOException: " + e);
        }
        return date;
    }}

Funcja main() wygląda w skrócie tak:


Components visual = new Components();
            visual.createComponents();
            String projectNr;
                GetNumber date = new GetNumber();
                projectNr = date.getNumberProject("Podaj numer projektu: ");

Czy mógłby ktoś mi pomóc jak to połączyć ze sobą? Bo komponenty ładnie się pojawiają, ale i tak numer projektu muszę podać w kompilatorze, żeby wykonało całą resztę, a nie w polu, który stworzyłam.

WIEM, ŻE POGMATWAŁAM, ale proszę o wyrozumiałość i pomoc - jestem początkująca i wiem, że to łatwy temat do ogarnięcia, ale mieszam się już w tym...
Z góry dziękuję za pomoc :)

1
Madzionek napisał(a):

Czy mógłby ktoś mi pomóc jak to połączyć ze sobą? Bo komponenty ładnie się pojawiają, ale i tak numer projektu muszę podać w kompilatorze, żeby wykonało całą resztę, a nie w polu, który stworzyłam.

WIEM, ŻE POGMATWAŁAM, ale proszę o wyrozumiałość i pomoc - jestem początkująca i wiem, że to łatwy temat do ogarnięcia, ale mieszam się już w tym...
Z góry dziękuję za pomoc :)

Nie w "kompilatorze", bo to zachodzi na wykonaniu, tylko mowa o pobieraniu z linii komendy.

Musisz w pełni obsłużyć JTextField który jest zaczęty. "W pełni" oznacza 3-4 linie kodu.
Miliony przykładów w sieci, np druga pozycja z googla.

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