介绍两个包

1. java swing

Swing 是一个为Java设计的GUI工具包。

Swing是JAVA基础类的一部分。

Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。

2. java awt

抽象窗口工具包,该包提供了一套与本地图形界面进行交互的接口,是Java提供的用来建立和设置Java的图形用户界面的基本工具

具体步骤

了解了这两个包以后我们可以开始画线拉

public class ShapeUI {
public void initUI(){
JFrame jf = new JFrame("图形可视化工具");
jf.setSize(800,600); //设置窗口大小
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//意思就是设置一个默认的关闭操作,也就是你的JFrame窗口的关闭按钮,点击它时,退出程序。
jf.setVisible(true);// 可视化 显示在屏幕上
// 监听器 :
ShapeListener shapeListener = new ShapeListener();
jf.addMouseListener(shapeListener); //增加监听器
Graphics g = jf.getGraphics();// Graphics 必须从 需要实现绘制功能的窗体上获取// 将 获取的graphics的引用地址传给 监听器对象的Graphics 属性
shapeListener.gr=g;
}
public static void main(String[] args) {
ShapeUI shapeUI = new ShapeUI();
shapeUI.initUI();
}
}

上面是创建了一个UI界面,接下来开始增加功能

import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class ShapeListener implements MouseListener { //重写监听器中的方法
Graphics gr;
@Override
public void mouseClicked(MouseEvent e) {
int x = e.getX();
int y = e.getY();
System.out.println("点击 x="+x+" y="+y);
}//点击
@Override
public void mousePressed(MouseEvent e) {
x1 = e.getX();
y1 = e.getY();//随意按下一个点 然后获取它的坐标
System.out.println("按下"+ x1 +"=x1 y1="+ y1);
}//按压
@Override
public void mouseReleased(MouseEvent e) {
x2 = e.getX();
y2 = e.getY();   //松开时通过鼠标监听器 获取坐标
System.out.println("释放"+x2+"=x2 y2="+y2);//释放
// 绘制直线
gr.drawLine(x1,y1,x2,y2);  //两点确定一条直线
}

效果展示

用java简单画一条线相关推荐

  1. 画一条线酬劳为1美元,知道在哪里画线酬劳为9999美元

    敲累了键盘,屏幕也累了,心也累了,给自己来点心灵鸡汤吧! 20世纪,美国福特公司高速发展,一个个车间,一片片厂房迅速建成并投入使用,客户的订单快把福特公司销售中心塞满了,每一辆刚刚下线的福特汽车都有许 ...

  2. java怎么画有角度_在Java中以特定角度画一条线

    假设我有一个(x,y)对于一条线的起点始终是相同的,并且(x,y)对于同一条线的终点是变化的.该行也总是40px长.在程序开始时,该线以垂直方向开始(称为0度).根据用户输入,我需要通过仅更改端点(x ...

  3. echarts 在两点之间画一条线_树的手绘很难画?分步骤教你画,简单易学,收藏起来临摹学习...

    前景树--半树.角树画法 半树与角树,在建筑手绘中常处于前景位置,其表现需尽量写意,形体概括,对比强烈,进而更好地引导与突出中景. (1)半树 半树,顾名思义只需画出单棵树从树冠中下部到树根接地的位置 ...

  4. qpaint 在graphicsview上的qimage画一条线_solidworks2016画一个塑料外壳:用开放的草图进行切除,你会吗?...

    今天来画下面这个图形,这个图形很常规,但我们尽量用"不常规"的方法来做,用一些技巧来绘制主个图形.最近有一部电影叫<啥是佩奇>比较火,但今天我们不画这个,我个人觉得那个 ...

  5. Python画多条线在一个图里

    概要: python的matplotlib作图很强大,本文教你用6种不同方式解决将多种数据曲线画到一起. 问题: 今天,老板又要一个数据报表,小明选择用 python来实现."用matplo ...

  6. python 一张图画多条线_Python画多条线在一个图里

    概要: python的matplotlib作图很强大,本文教你用6种不同方式解决将多种数据曲线画到一起. 问题: 今天,老板又要一个数据报表,小明选择用 python来实现."用matplo ...

  7. python两点画线_在图像python matplotlib的两点之间画一条线

    我有一个图像,我正在使用pyfits加载到2D数组中.我想在图像上画一条穿过两个像素的线,并用添加的新线保存它(不是绘图).在这之后,我想用不同的颜色画一条垂直于前一条线的线.使用matplotlib ...

  8. C#编写画直线,简单画线,鼠标交互画线,画一条线

    从最简单C#窗体画线开始,直接打开VS,选择C#的窗体应用程序,然后把代码放进去,事件绑定就OK,下面是详细步骤. using System; using System.Collections.Gen ...

  9. echarts 在两点之间画一条线_凭什么?辛辛苦苦画了三个小时,却换来一句“撕了重画”...

    最近一位正在集训的同学找我吐槽. △学生聊天截图 每次听到这种事情我特么能气死,这些败类怎么还能够在各大画室之间游刃有余? 首先对于撕画这个问题,榜姐是不赞同的. 师者,传道授业解惑也! 棍棒底下出孝 ...

最新文章

  1. Decision stump、Bootstraping、bagging、boosting、Random Forest、Gradient Boosting
  2. visual studio 阅读 linux-kernel
  3. 转——C# DataGridView控件 动态添加新行
  4. ansible获取linux信息,ansible 获取系统信息的一些范例,ansible系统信息
  5. python模拟给qq发消息,python模拟QQ聊天--socket通信
  6. VMWare学习总结(2)——VMware中三种网络连接的区别
  7. 团队管理心得--建团队,管事理人
  8. 管道符、重定向、环境变量
  9. 第六届中国电子信息博览会今日正式开幕,智享新时代!
  10. Win10黑屏的时候显示时钟怎么设置
  11. SQL的几种连接查询方式(内连接、外连接、全连接、联合查询)
  12. 《征信业务管理办法》发布
  13. 【网络工程师必备】怎么使用route命令实现内外网切换
  14. 【全网最全】Python Package Installer (pip)镜像源使用
  15. 关于80286——《x86汇编语言:从实模式到保护模式》读书笔记15
  16. 《趣学算法(第2版)》读书笔记 Part 2 :算法入门
  17. 利用HISTFILESIZE和HISTSIZE在ubunutu中调整命令行History的Size
  18. 怎么利用计算机传输文件到邮箱,电脑和电脑怎么传文件_电脑和电脑之间如何传文件-win7之家...
  19. CS1503号错误是什么
  20. 后端开发、C++开发面经分类整理

热门文章

  1. Android MD5加密法
  2. 【论文解读】R-CNN 深入浅出理解目标检测开山之作
  3. 一度智信:电商网店推广技巧分享
  4. 921天,从小厂到入职阿里
  5. 华中科技大学2019年计算机录取分数线,2019华中科技大学录取分数线
  6. CSS段落间距调整 P标签段落上下距离如何设置
  7. ssm南工二手书交易平台 毕业设计-附源码172334
  8. 我们不再需要3Q大战
  9. Java封神路之多线程(第二篇),从把握整体架构到具体演示,快速掌握多线程机制
  10. js实现在微信中下载app