Swing中依据鼠标拖拽来画出矩形的实现方法
更新时间:2019年11月21日 10:10:27 作者:皮卡皮卡皮~~
这篇文章主要介绍了Swing中依据鼠标拖拽来画出矩形的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
画了好久,草要么就是画了,没插掉原先线条,要么就是画第二个的时候第一个也被擦掉,但其实只要调用repaint方法就好了…
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
class Rect extends JFrame{
public static void main(String[] args) {
Rect r=new Rect();
}
Draw draw=new Draw();
public Rect()
{
this.add(draw);
this.addMouseListener(draw);
this.setSize(500,500);
this.setLocation(400,400);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class Draw extends JPanel implements MouseListener {
int x1 = 0;
int y1 = 0;
int x2 = 0;
int y2 = 0;
public void paint(Graphics g) {
// super.paint(g);
g.setColor(Color.BLUE);
g.drawRect(x1, y1, x2 - x1, y2 - y1);
}
@Override
public void mouseClicked(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
x1 = e.getX();
y1 = e.getY();
}
@Override
public void mouseReleased(MouseEvent e) {
x2 = e.getX();
y2 = e.getY();
this.repaint();
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章
关于idea更新到2020.2.3无法创建web项目原因 library is not specified
这篇文章主要介绍了关于idea更新到2020.2.3无法创建web项目原因 library is not specified,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-10-10
java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list
这篇文章主要介绍了java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list错误解决办法的相关资料,需要的朋友可以参考下2016-12-12
Elasticsearch中store field与non-store field的区别说明
这篇文章主要介绍了Elasticsearch中store field与non-store field的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-07-07


最新评论