gpt4 book ai didi

java - 在 JFrame 的 JPanel 中看不到子 JPanel

转载 作者:行者123 更新时间:2023-11-29 04:46:32 25 4
gpt4 key购买 nike

我已经创建了一个 JFrame。在这个 JFrame 中,我创建了一个 JPanel。在这个 JPanel 中,我创建了另一个 JPanel(我们称它为“A”)。

我在“A”中画了一个矩形,想用图形创建按钮。我的图形用户界面中没有矩形。我可以看到“A”中的 paintComponent() 方法没有被调用。

代码:JPanels:(子 JPanel 是内部类)

public class MemoryPanel extends JPanel {

public MemoryPanel(){
setPreferredSize(new Dimension(350,448));
}

@Override
public void paintComponent(Graphics g) {
//POSITIONING
setLayout(new BorderLayout());

//CREATE MEMORY BUTTONS
MemButton a=new MemButton();

//Drawing Rectangles for Memory
add(a,BorderLayout.CENTER);

}



private class MemoryButton extends JPanel{
public MemoryButton(){
setLayout(null);
setPreferredSize(new Dimension(87,40));
}

@Override
public void paintComponent(Graphics g){
Graphics2D td= (Graphics2D)g;
td.drawRect(0, 0, 20, 20);
}
}
}

最佳答案

您应该首先对 JButton 进行编程,以便您的图形可以用作按钮。我相信这篇文章会对您有所帮助:

Creating a custom button in Java

如果您想要一个矩形作为按钮的背景,您可以在主面板中绘制它并在其上添加按钮。尝试使用不同的布局来维护一些秩序。

关于java - 在 JFrame 的 JPanel 中看不到子 JPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36891598/

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