|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
class Demo extends JFrame {
// private boolean isRed = false;
// private boolean isGreen = false;
// private int mouseX;
// private int mouseY;
// private boolean clear = false;
public Demo(String s) {
myJframe(s);
}
private void myJframe(String s) {
JFrame jf = new JFrame();
jf.setTitle(s);
jf.setBounds(100, 100, 600, 600);
jf.getContentPane().setBackground(Color.pink);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// class MyPanel extends JPanel {
// @Override
// protected void paintComponent(Graphics g) {
// super.paintComponent(g);
// if (clear) {
// setBackground(Color.white);
// g.clearRect(0, 0, getWidth(), getHeight());
// clear = false; // Reset clear flag
// }
//
// if (isRed) {
// g.setColor(Color.RED);
// g.fillOval(mouseX - 25, mouseY - 25, 50, 50);
// }
// if (isGreen) {
// g.setColor(Color.GREEN);
// g.fillRect(mouseX, mouseY, 50, 50);
// }
// }
// }
// MyPanel mp = new MyPanel();
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 1) {
// mouseX = e.getX();
// mouseY = e.getY();
Graphics g=getGraphics();
g.setColor(Color.green);
g.fillRect(e.getX(),e.getY(),20,20);
} else if (e.getButton() == MouseEvent.BUTTON3 && e.getClickCount() == 1) {
// mouseX = e.getX();
// mouseY = e.getY();
// isGreen = true;
// isRed = false; // Reset red flag
// clear = false; // Reset clear flag
// repaint(); // Repaint panel
Graphics g=getGraphics();
g.setColor(Color.red);
g.fillOval(e.getX(),e.getY(),20,20);
} else if (e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 2) {
// clear = true;
// isRed = false; // Reset red flag
// isGreen = false; // Reset green flag
repaint(); // Repaint panel
}
}
});
// jf.add(mp);
jf.setVisible(true);
}
public static void main(String[] args) {
new Demo("Drawing Demo").myJframe("Drawing Demo");
}
}
为什么画不出来,原题目是7.编写Java程序,创建一个窗体,并实现交互。在窗体内“单击鼠标右键”,在光标处绘制一个“红色圆”;窗体内“单击鼠标左键”,在光标处绘制一个“绿色方框”;窗体内“双击鼠标左键”,清空所有已画“圆”和“方”。 |
|