JAVA swing方面的问题

来源:百度知道 编辑:UC知道 时间:2024/05/13 16:20:37
package edu.aic.swing.mycomponent;

import java.awt.*;
import javax.swing.*;

public class DragPanelTest extends JFrame {

private static final long serialVersionUID = 1L;

private DragPanel myPanel;

public DragPanelTest() {
// set up a SelfContainedPanel
myPanel = new DragPanel();
myPanel.setBackground(Color.WHITE);
myPanel.setPreferredSize(new Dimension(400, 300));

Container container = getContentPane();
container.setLayout(new FlowLayout());
container.add(myPanel);

setSize(500, 350);
setVisible(true);
}

public static void main(String args[]) {
DragPanelTest application = new DragPanelTest();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

}

上面这个程序是画圆的,要花长方形应该怎么改,最好还能实现画多个长方形...请高手指教
无血,不是直接运行出来就是一个长方形,你运行我那个程序看下,是可以用鼠标画图的

不是说以嘛实现鼠标事件
非要给你写出来啊
看看这个吧,只是给你提示一下嘛,别人 都给你写出来还有什么意思
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import java.awt.event.*;

public class DrawTest
{
public static void main(String[] args)
{
DrawFrame frame = new DrawFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}

class DrawFrame extends JFrame
{
public DrawFrame()
{
setTitle("DrawTest");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
DrawPanel panel = new DrawPanel();
this.getContentPane().add(panel);
}

public static final int DEFAULT_WIDTH = 400;
public static final int DEFAULT_HEIGHT = 400;
}
//实现主要功能的类
class DrawPanel extends JPanel implements MouseMotionListener,MouseListener
{
//确定长方形大小和位置的变量,
//既然要实现鼠标画图,我们将通过鼠标事件操作以下变量
double leftX = 0;
double topY = 0