gpt4 book ai didi

java - JFrame 和 jpanel Action 监听器

转载 作者:行者123 更新时间:2023-12-01 13:26:42 27 4
gpt4 key购买 nike

在主类的构造函数中,我将此 Action 监听器附加到按钮:

home.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
Home homepage = new Home();
homepage.setBounds(0, 100, 500, 400);
add(homepage);

}
});

这是 Home 类:

package test;

import javax.swing.JButton;
import javax.swing.JPanel;

public class Home extends JPanel{

public Home(){
JButton jb = new JButton("Back");
add(jb);
}
}

jb 按钮没有显示在 jframe 上...你能帮我吗?

编辑:它实际上在那里,但您需要将鼠标悬停在它上面才能看到它......我们如何请求焦点?就像我做的 jb.requestFocus() 一样,您仍然需要将鼠标悬停在它上面。

最佳答案

动态添加组件时,需要revalidate()repaint()

   add(homepage);
revalidate();
repaint();
<小时/>

旁注:看看Laying out Components withing a Container了解如何使用布局管理器。正如您所做的那样,它们比使用空布局更受青睐。

关于java - JFrame 和 jpanel Action 监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21783798/

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