gpt4 book ai didi

java - 单击按钮后,它在我的面板中没有显示任何形状

转载 作者:行者123 更新时间:2023-12-01 22:34:31 25 4
gpt4 key购买 nike

我正在尝试在面板中绘制矩形。下面是我的图形类:

class MyComponent extends JComponent {
public void paint(Graphics g) {
g.fillRect(30, 30, 100, 100);
}
}

我有一个矩形按钮,我可以在其中添加此操作监听器

rect.addActionListener(new ButtonListener());

我的操作实现是:

private class ButtonListener implements ActionListener
{
public void actionPerformed(ActionEvent e) {
if(e.getSource()==rect)
{
p1.add(new MyComponent());
p1.repaint();
}
}
}

但是当我单击矩形按钮时什么也没有发生。

最佳答案

revalidate需要在repaint之前调用

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

通常在 Swing 中重写 paintComponent 而不是 paint,并调用 super.paintComponent 来更新子组件

关于java - 单击按钮后,它在我的面板中没有显示任何形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27073389/

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