我的 Java 银行应用程序中的 UI 不起作用

The UI in my banking application in Java does not work

提问人:Aleksander 提问时间:11/14/2023 最后编辑:camickrAleksander 更新时间:11/14/2023 访问量:47

问:

你能告诉我为什么这不起作用吗?当我告诉要查找鼠标按钮的释放并确切地查看我是否按下按钮时,但是当我启动应用程序时,System.out.println() 正在控制台中打印文本,但画布没有更改,我的 UI 不起作用。

        if (window.getCurrentPage() == Window.Page.MAIN) {
            if ((mouseX >= 20 && mouseX <= 220) && (mouseY >= 80 && mouseY <= 140)) {
                try {
                    MainPage.removeAccountServicesPanel();
                    MainPage.addCardsMenuLabel();
                }
                catch(Exception error) {
                    System.out.println("asd" + error);
                }
                System.out.println("Opened Cards Menu");
            }

            if ((mouseX >= 20 && mouseX <= 220) && (mouseY >= 10 && mouseY <= 70)) {
                MainPage.AccountServicesPanel();
                System.out.println("Opened Account Service Menu");
            }
        }
    }

还有MainPage.java

public MainPage(Window window) {
        this.window = window;
        this.mouseInputs = new MouseInputs(window);

        this.infoPanel = new JPanel();

        addMouseListener(mouseInputs);

        requestFocus();

        setLayout(null);

        this.infoPanel.setBackground(new Color(13, 17, 37));
        this.infoPanel.setBounds(340, 0, 1280 - 340, 685);

        add(this.infoPanel);

        setSize(1280, 720);
        setBackground(new Color(13, 17, 23));

        this.font = new Font("Arial", Font.BOLD, 30);;

        this.accServ = new JLabel("Account Services");
        this.CardsMenuLabel = new JLabel("Cards");

//        Puttin in the AccServ Label
        this.accServ.setFont(font);
        this.accServ.setForeground(Color.WHITE);

//        Putting in the CardsMenuLabel
        this.CardsMenuLabel.setFont(font);
        this.CardsMenuLabel.setForeground(Color.WHITE);
    }

    public static void AccountServicesPanel() {
        infoPanel.add(accServ);
    }

    public static void removeAccountServicesPanel() {
        infoPanel.remove(accServ);
    }

    public static void addCardsMenuLabel() {infoPanel.add(CardsMenuLabel);}

    public static void removeCardsMenuLabel() {infoPanel.remove(CardsMenuLabel);}

我试图抓住问题,但什么也没发生,尝试了System.out.println,我不知道为什么它不起作用。 请帮忙。

Java Swing JFramer

评论


答: 暂无答案