为什么面板不喷漆?
代码
import javax.swing.*;
import java.awt.*;
class tester {
public static void main(String args[]) {
JFrame fr = new JFrame();
JPanel p = new JPanel();
p.setBackground(Color.RED);
p.paintImmediately(20,20,500,500);
fr.add(p);
fr.setVisible(true);
fr.setSize(2000,2000);
}
}
我得到一个完全红色的面板。为什么我接不到电话?我怎样才能得到它?
CODE
import javax.swing.*;
import java.awt.*;
class tester {
public static void main(String args[]) {
JFrame fr = new JFrame();
JPanel p = new JPanel();
p.setBackground(Color.RED);
p.paintImmediately(20,20,500,500);
fr.add(p);
fr.setVisible(true);
fr.setSize(2000,2000);
}
}
I get a panel painted completely red. Why don't I get the line? How can I get it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
那是因为您设置了背景并且没有进行任何进一步的绘制...
这不是这样做的方法。为什么要调用
paintImmediately
?以下是文档的内容:我建议您阅读有关 AWT/Swing 中绘画的内容。
要获得类似这样的内容
您可以像这样更改代码:
That's because you set the background and didn't do any further painting...
This is not the way to do it. Why do you call
paintImmediately
? Here is what the documentation says:I suggest you read up on painting in AWT/Swing.
To get something like this
you could change your code like this: