java程序实现鼠标绘图
2024-08-31 06:51:13
import java.awt.*; import javax.swing.*;
class Gstudy extends JFrame{ private int x1,y1,x2,y2;
private newPanel panel=new newPanel();
private JButton btn=new JButton("清除");
public Gstudy()
{
setTitle("交互式绘图");
setBounds(10,10,750,700);
btn.addActionListener(new ClearList());
panel.add(btn,BorderLayout.SOUTH);
add(panel);
}
public static void main(String[] args)
{
Gstudy frm=new Gstudy();
frm.setVisible(true);
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class ClearList implements ActionListener
{
@Override
public void actionPerformed(ActionEvent e) { panel.paintComponent(panel.getGraphics());
}
}
private class MyMouseList extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
x1=e.getX();
y1=e.getY();
}
}
private class MyMouseMotionList extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
x2=e.getX();
y2=e.getY();
Graphics g=panel.getGraphics();
g.drawLine(x1, y1, x2, y2);
x1=x2;
y1=y2;
}
}
private class newPanel extends JPanel
{ public newPanel()
{
this.addMouseMotionListener(new MyMouseMotionList());
this.addMouseListener(new MyMouseList());
}
@Override
protected void paintComponent(Graphics g) {
// TODO Auto-generated method stub
super.paintComponent(g);
} }
最新文章
- Why do we live in this world?
- 关于tomcat的热部署
- 0060 Linux SELinux 管理命令
- Linux下FTP服务(一)—— Ubuntu安装
- 通过eclipse配置Spring MVC项目
- <;q>;标签,短文本引用;<;blockquote>;标签,长文本引用
- Validform自定义提示效果-使用自定义弹出框
- WPF杂难解 奇怪的DisconnectedItem
- STL for_each()
- 如何用.NET创建Windows服务
- PHP获取客户端和服务器端IP
- Visual Studio使用技巧
- asp.net mvc4
- memcached and redis
- 学习Redis从这里开始
- Python输入一个数字打印等腰三角形
- DevOps之域名
- java程序初体验
- SoapUI简介及下载地址
- 数位DP+其他
热门文章
- users命令详解
- python将response中的cookies加入到header
- to_char
- 冲刺One之站立会议8 /2015-5-21
- “Gogoing”改进方案
- 其实servlet就是一种mvc设计思想的一种实现
- 福大软工 &#183; 第七次作业 - 需求分析报告(404 Note Found队)
- [建树(非二叉树)] 1106. Lowest Price in Supply Chain (25)
- cropper.js 超级好用的裁剪图片工具
- delphi 删除字符串的回车、空格、Tab键