用java简单画一条线
介绍两个包
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美元,知道在哪里画线酬劳为9999美元
敲累了键盘,屏幕也累了,心也累了,给自己来点心灵鸡汤吧! 20世纪,美国福特公司高速发展,一个个车间,一片片厂房迅速建成并投入使用,客户的订单快把福特公司销售中心塞满了,每一辆刚刚下线的福特汽车都有许 ...
- java怎么画有角度_在Java中以特定角度画一条线
假设我有一个(x,y)对于一条线的起点始终是相同的,并且(x,y)对于同一条线的终点是变化的.该行也总是40px长.在程序开始时,该线以垂直方向开始(称为0度).根据用户输入,我需要通过仅更改端点(x ...
- echarts 在两点之间画一条线_树的手绘很难画?分步骤教你画,简单易学,收藏起来临摹学习...
前景树--半树.角树画法 半树与角树,在建筑手绘中常处于前景位置,其表现需尽量写意,形体概括,对比强烈,进而更好地引导与突出中景. (1)半树 半树,顾名思义只需画出单棵树从树冠中下部到树根接地的位置 ...
- qpaint 在graphicsview上的qimage画一条线_solidworks2016画一个塑料外壳:用开放的草图进行切除,你会吗?...
今天来画下面这个图形,这个图形很常规,但我们尽量用"不常规"的方法来做,用一些技巧来绘制主个图形.最近有一部电影叫<啥是佩奇>比较火,但今天我们不画这个,我个人觉得那个 ...
- Python画多条线在一个图里
概要: python的matplotlib作图很强大,本文教你用6种不同方式解决将多种数据曲线画到一起. 问题: 今天,老板又要一个数据报表,小明选择用 python来实现."用matplo ...
- python 一张图画多条线_Python画多条线在一个图里
概要: python的matplotlib作图很强大,本文教你用6种不同方式解决将多种数据曲线画到一起. 问题: 今天,老板又要一个数据报表,小明选择用 python来实现."用matplo ...
- python两点画线_在图像python matplotlib的两点之间画一条线
我有一个图像,我正在使用pyfits加载到2D数组中.我想在图像上画一条穿过两个像素的线,并用添加的新线保存它(不是绘图).在这之后,我想用不同的颜色画一条垂直于前一条线的线.使用matplotlib ...
- C#编写画直线,简单画线,鼠标交互画线,画一条线
从最简单C#窗体画线开始,直接打开VS,选择C#的窗体应用程序,然后把代码放进去,事件绑定就OK,下面是详细步骤. using System; using System.Collections.Gen ...
- echarts 在两点之间画一条线_凭什么?辛辛苦苦画了三个小时,却换来一句“撕了重画”...
最近一位正在集训的同学找我吐槽. △学生聊天截图 每次听到这种事情我特么能气死,这些败类怎么还能够在各大画室之间游刃有余? 首先对于撕画这个问题,榜姐是不赞同的. 师者,传道授业解惑也! 棍棒底下出孝 ...
最新文章
- Decision stump、Bootstraping、bagging、boosting、Random Forest、Gradient Boosting
- visual studio 阅读 linux-kernel
- 转——C# DataGridView控件 动态添加新行
- ansible获取linux信息,ansible 获取系统信息的一些范例,ansible系统信息
- python模拟给qq发消息,python模拟QQ聊天--socket通信
- VMWare学习总结(2)——VMware中三种网络连接的区别
- 团队管理心得--建团队,管事理人
- 管道符、重定向、环境变量
- 第六届中国电子信息博览会今日正式开幕,智享新时代!
- Win10黑屏的时候显示时钟怎么设置
- SQL的几种连接查询方式(内连接、外连接、全连接、联合查询)
- 《征信业务管理办法》发布
- 【网络工程师必备】怎么使用route命令实现内外网切换
- 【全网最全】Python Package Installer (pip)镜像源使用
- 关于80286——《x86汇编语言:从实模式到保护模式》读书笔记15
- 《趣学算法(第2版)》读书笔记 Part 2 :算法入门
- 利用HISTFILESIZE和HISTSIZE在ubunutu中调整命令行History的Size
- 怎么利用计算机传输文件到邮箱,电脑和电脑怎么传文件_电脑和电脑之间如何传文件-win7之家...
- CS1503号错误是什么
- 后端开发、C++开发面经分类整理