上面的那个 button 按钮是假的,第一鼠标移动上去不变样子,第二点也点不了
点下面那个真的我代码安排好的,很正常.并且点了一次之后上面那个假的也会消失,程序正常运行,色块变色
程序代码如下:
package SimpleGui3;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.*;
public class SimpleGui3 {
public static void main(String[] args) {
MyFrame gui = new MyFrame();
}
}
class MyFrame extends JFrame implements ActionListener {
JButton button;
MyDrawPanel draw_panel;
public MyFrame() {
this.setVisible(true);
this.setSize(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
button = new JButton("click to change colors");
button.addActionListener(this);
this.getContentPane().add(BorderLayout.SOUTH,button);
draw_panel = new MyDrawPanel();
this.getContentPane().add(BorderLayout.CENTER,draw_panel);
}
public void actionPerformed(ActionEvent event) {
this.repaint();
}
}
//无关紧要的部分↓
class MyDrawPanel extends JPanel {
public void paintComponent(Graphics g) {
int[] color_array = new int[3];
for(int i=0;i<color_array.length;i++) {
color_array[i] = (int)(Math.random() * 255);
}
Color c = new Color(color_array[0],color_array[1],color_array[2]);
g.setColor(c);
g.fillRect(20, 50, 100, 100);
}
}
到底是咋回事儿啊,求大佬解答,谢谢..
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.