this.jPanel1.getGraphics().setColor(new Color(255,255,255));
System.out.println(this.jPanel1.getGraphics().getColor());
为什么还是输出为0 0 0
System.out.println(this.jPanel1.getGraphics().getColor());
为什么还是输出为0 0 0
解决方案 »
- java 连接外网
- 请问 边界类、控制类和实体类
- 求网游编程资料,谢谢各位朋友!
- 为什么Random这么慢?
- 请写出代码
- Swing组建 JTable 使用new DefalutTableModel (Vector,Vector) 出现 can't be cast to java.util.vector 这样的异常,请问为什么啊?
- 如何在JTextArea中加入垂直和水平滚动条?
- Java初学:当要导入一个或多个Java类时。。。。
- 知道PHP的crypt()生成的密文,如果用JAVA校验明文是否正确?
- 求助 vlc怎么实现视屏播放的
- 关于计时器的问题,请教下
- 一个java中实现的DESede加密算法想翻译成c#版本的
Graphics 为什么都设置了颜色都画不出颜色出来呀怎么都是黑色在JPanel JLabel JButton 都是这样子
为什么没人回答我呀非常急呀 两天后要交项目了 我主要是做统计的
package untitled3;import java.awt.BorderLayout;
import java.awt.Dimension;import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.*;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2008</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
JButton jButton1 = new JButton(); public Frame1() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
} /**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(borderLayout1);
setSize(new Dimension(400, 300));
setTitle("Frame Title");
jPanel1.setPreferredSize(new Dimension(10, 50));
jButton1.setText("jButton1");
jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));
contentPane.add(jPanel1, java.awt.BorderLayout.SOUTH);
jPanel1.add(jButton1);
contentPane.add(jPanel2, java.awt.BorderLayout.CENTER);
} public void setColorAndDrawGraphics(Graphics g) {
g.setColor(Color.WHITE); //可以改变颜色,因为是引用传参
g.drawLine(0, 0, 100, 100); //颜色有改变
} public void jButton1_actionPerformed(ActionEvent e) {
setColorAndDrawGraphics(jPanel2.getGraphics());
// jPanel2.getGraphics().setColor(Color.WHITE);//改变了也没改变(因为是副本)
jPanel2.getGraphics().drawLine(100, 100, 200, 200); //颜色无改变
}
}
class Frame1_jButton1_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jButton1_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
可以了,谢谢您的提醒,让我琢磨了,原来是逻辑问题,让我更了解Java了,哈哈 这问题搞了我好久时间!