Новичок в Java и нужна помощь в создании системы регистрации вызовов - PullRequest
0 голосов
/ 06 ноября 2018

Мне нужно, чтобы кнопка входа в систему перешла на следующий класс (страницу) системы Я добавил несколько кнопок, которые видел в видео и читал о них, и очень хотел бы, чтобы это работало.

так что я поиграл с несколькими командами, но не думаю, что понял правильно.

Можете ли вы сказать мне, что я делаю крайне неправильно?

import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JToolBar;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JSeparator;
import javax.swing.JTable;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.Scanner;

public class system {

    protected static final int Admin = 0;
    private JFrame frame;
    private JTextField Usernameinput;
    private JTextField Passwordinput;

    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            Scanner input = new Scanner(System.in);

            public void run() {
                try {
                    system window = new system();
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    /**
     * Create the application.
     */
    public system() {
        initialize();
    }

    /**
     * Initialize the contents of the frame.
     */
    private void initialize() {
        frame = new JFrame();
        frame.setBounds(100, 100, 534, 365);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setLayout(null);

        JButton btnLogin = new JButton("Login");
        btnLogin.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {

                String username;
                String password;

                System.out.println("Log in:");
                System.out.println("username: ");
                Scanner input = null;
                username = input.next();

                System.out.println("password: ");
                password = input.next();

                //users check = new users(username, password);
                if (Usernameinput.equals(Admin) && Passwordinput.equals(Admin)) {
                    System.out.println("Welcome");
                };

            }
        });
        btnLogin.setBounds(29, 242, 89, 23);
        frame.getContentPane().add(btnLogin);

        JButton btnReset = new JButton("Reset");
        btnReset.setBounds(144, 242, 89, 23);
        frame.getContentPane().add(btnReset);

        JButton btnExit = new JButton("Exit");
        btnExit.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                System.exit(0);
            }
        });
        btnExit.setBounds(397, 282, 89, 23);
        frame.getContentPane().add(btnExit);

        Usernameinput = new JTextField();
        Usernameinput.setBounds(144, 74, 209, 20);
        frame.getContentPane().add(Usernameinput);
        Usernameinput.setColumns(10);

        Passwordinput = new JTextField();
        Passwordinput.setColumns(10);
        Passwordinput.setBounds(144, 106, 209, 20);
        frame.getContentPane().add(Passwordinput);

        JLabel lblUsername = new JLabel("Username:");
        lblUsername.setBounds(73, 77, 55, 14);
        frame.getContentPane().add(lblUsername);

        JLabel lblPassword = new JLabel("Password:");
        lblPassword.setBounds(73, 108, 55, 17);
        frame.getContentPane().add(lblPassword);

        JSeparator separator = new JSeparator();
        separator.setBounds(10, 211, 498, 2);
        frame.getContentPane().add(separator);

        JSeparator separator_1 = new JSeparator();
        separator_1.setBounds(10, 57, 498, 2);
        frame.getContentPane().add(separator_1);

        JLabel lblNewLabel = new JLabel("Welcome to The System v 0.1");
        lblNewLabel.setBounds(182, 5, 151, 41);
        frame.getContentPane().add(lblNewLabel);
    }
}

Ответы [ 3 ]

0 голосов
/ 08 ноября 2018

Привет, спасибо за помощь

Но, как и сейчас, если я нажму «Войти», он перейдет на консольную страницу, где написано «Добро пожаловать», но ему понравится перейти на следующий урок ??

0 голосов
/ 08 ноября 2018

не берите в голову, как это добавить

теперь мне просто нужно использовать второй кадр

0 голосов
/ 06 ноября 2018

В вашем btnLogin.addActionListener есть ошибка. Вам не нужно input здесь. Обычно нам нужно Scanner, чтобы прочитать ввод с консоли.

Но теперь, когда у нас есть пользовательский интерфейс, мы можем получить пользовательский ввод от конкретных JTextField с. В вашем случае имя пользователя от Usernameinput и пароль от Passwordinput.

username = Usernameinput.getText();
password = Passwordinput.getText();

Далее оператор if в вашем btnLogin.addActionListener должен проверить текст внутри JTextFields. Поскольку мы уже получили их и сохранили в переменных username и password, вы можете использовать их.

И вы не можете использовать String.equals метод с int. username.equals(Admin) всегда будет возвращать false, поскольку переменная Admin является int. Так что поменяй,

if (username.equals("username") && password.equals("password")) {
    System.out.println("Welcome");
};

Наконец, вы можете удалить неиспользуемые операторы import (необязательно).

import javax.swing.JToolBar;
import javax.swing.JTable;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...