请创建主方法测试上面的程序
时间: 2024-02-12 17:09:54 浏览: 62
以上的程序是一个 Applet 程序,需要在网页中嵌入使用。如果需要测试 Applet,可以使用 AppletViewer 来运行,也可以将 Applet 内容嵌入到一个 HTML 页面中运行。
如果您想要测试 Java 代码,可以将上面的代码稍作修改,改成一个 Java 应用程序,然后在主方法中测试它。以下是一个测试代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class DrawRectangleTest extends JFrame implements MouseListener, MouseMotionListener {
int startX, startY, endX, endY;
String statusText = "";
public DrawRectangleTest() {
super("Draw Rectangle Test");
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(400, 300));
panel.addMouseListener(this);
panel.addMouseMotionListener(this);
getContentPane().add(panel);
pack();
setVisible(true);
}
public void paint(Graphics g) {
super.paint(g);
int width = Math.abs(endX - startX);
int height = Math.abs(endY - startY);
int x = Math.min(startX, endX);
int y = Math.min(startY, endY);
g.drawRect(x, y, width, height);
}
public void mousePressed(MouseEvent e) {
startX = e.getX();
startY = e.getY();
}
public void mouseReleased(MouseEvent e) {
endX = e.getX();
endY = e.getY();
repaint();
}
public void mouseDragged(MouseEvent e) {
endX = e.getX();
endY = e.getY();
repaint();
}
public void mouseMoved(MouseEvent e) {
statusText = "Mouse position: (" + e.getX() + ", " + e.getY() + ")";
setTitle(statusText);
}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public static void main(String[] args) {
new DrawRectangleTest();
}
}
```
这个程序创建了一个 JFrame 窗口,窗口中包含了一个 JPanel,我们可以在这个 JPanel 中画矩形。当用户拖动鼠标时,我们实时更新矩形的位置,并重绘它。我们也在窗口的标题中显示鼠标当前的位置。
您可以直接运行这个程序,看看效果。
阅读全文