gpt4 book ai didi

java - 如何在 ActionListener 中添加 Swing 组件?

转载 作者:行者123 更新时间:2023-12-02 08:03:17 25 4
gpt4 key购买 nike

我有一个名为 newMI 的 JMenuItem,位于扩展 JFrame 的类中。我想在单击 JMenuItem 时将 Swing 组件添加到我的 JFrame 中。出于测试目的,我尝试添加 JPanel 并将 JPanel 的背景颜色设置为红色。

这是我的 ActionListener:

newMI.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JPanel p = new JPanel();
p.setBackground(Color.red);
add(p);
}
}

但是这不起作用。如果我在其他 Swing 组件初始化期间将 JPanel 添加到 JFrame,则可以更改 JPanel 的背景颜色。但我无法将 Swing 组件直接添加到 ActionListener 内部的 JFrame 中。有人可以帮忙吗?

非常感谢。

最佳答案

当您从可见 GUI 动态添加/删除组件时,您需要执行以下操作:

panel.add(...);
panel.revalidate();
panel.repaint();

如果您需要更多帮助,请发布您的 SSCCE这说明了问题。

关于java - 如何在 ActionListener 中添加 Swing 组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6092571/

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