gpt4 book ai didi

java - 通过单击 JMenuBar 打开新容器?

转载 作者:行者123 更新时间:2023-12-01 23:07:08 24 4
gpt4 key购买 nike

我创建了一个包含 JMenuBar 的窗口,当我单击 JMenuBar 中的菜单时,我想打开另一个容器(通过调用一个新类来分隔每个容器按类别)。但我不知道该怎么做。

实际上我重置了当前容器并在上面添加了项目...

public void mousePressed(MouseEvent arg0) 
{
if(arg0.getSource()==login)
{
cont.removeAll();
MenuLogin menu= new MenuLogin();
cont.add(menu);
cont.repaint();
Window.this.setVisible(true);
}
}

但这不是我想要的

最佳答案

"I want to open another container when I click on a menu from my JMenuBar"

  1. 不要将 MouseListener 用于 JMenu。要么使用 MenuListener或者只是将 JMenuItem 添加到 JMenu 并为其使用 ActionListener

  2. 当您想要向容器中删除和添加组件时,您需要使用 revalidate() 以及 repaint()。首先重新验证。

  3. 不要删除所有面板并添加新面板,而是考虑使用 CardLayout,它允许您交换 View 。查看更多How to Use CardLayout

<小时/>

查看更多信息 How to Use Menus

关于java - 通过单击 JMenuBar 打开新容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22593902/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com