Java GUI编程题求解(还存在一点问题)

来源:百度知道 编辑:UC知道 时间:2024/06/02 15:45:50
题目:编写程序,在用户单击鼠标的位置输出一个颜色、大小随机变化的圆。若用户单击多次,那么要输出多个圆。
我的问题:以下是我自己完成好的了,只是绘图的背景居然总是透明的。请教高手怎么在JFrame框架中显示出来,那样绘图的背景就不是透明的。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class DrawCircle extends JFrame {
int xValue=100, yValue=75; // 保留鼠标位置( X,Y )

public DrawCircle() { // 构造函数
super("点击画圆"); // 调用JFrame类中的构造函数
setSize(400, 350);
setVisible(true);
addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
xValue = e.getX();
yValue = e.getY();
repaint(); // 调用paint( )方法
}
});

addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}

public void paint(Graphics g) {
int i = (int) (Math.random() * 256);
int j = (int) (Math.random() * 256);
int k = (int) (Math.random() * 256);
Color c = new Color(i, j, k

class DrawCircle extends JFrame {

int xValue = 100, yValue = 75; // 保留鼠标位置( X,Y )

public DrawCircle() { // 构造函数
super("点击画圆"); // 调用JFrame类中的构造函数
setSize(400, 350);
setVisible(true);
addMouseListener(new MouseAdapter() {

public void mousePressed(MouseEvent e) {
xValue = e.getX();
yValue = e.getY();
repaint(); // 调用paint( )方法
}
});

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}

public void paint(Graphics g) {
super.paint(g);
int i = (int) (Math.random() * 256);
int j = (int) (Math.random() * 256);
int k = (int) (Math.random() * 256);
Color c