Java语法学习坐标体系/绘图

Java语法学习坐标体系/绘图

大纲

  1. 基本介绍
  2. 绘图

具体案例

1. 基本介绍

在这里插入图片描述

2.绘图

基本介绍:
在这里插入图片描述
注意每次自动调用,就会重新执行一次paint方法里的所有程序

先自定义面板

创建一个类继承JPanel,然后重写构造器,paint方法

class MyPanel extends JPanel {@Overridepublic void paint(Graphics g) {super.paint(g);}}

再调用里面的方法进行绘图(具体查找API)

注意是在我们重写的paint方法里绘制
在这里插入图片描述
对于第二点:
前面是左上角坐标,后面是右下角坐标
对于第三点:
设置的绘制椭圆的左上角的坐标,然后分别是宽和高

画图片(对应方法第六点)(左上角为坐标点)
  1. 获取图片的信息
    首先复制图片
    然后到out里面与该项目同名的文件上粘贴
    如图所示
    在这里插入图片描述
  2. 然后调用固定格式
    Image image = Toolkit.getDefaultToolkit().getImage(MyPanel.class.getResource(“/”))
    注意:这里的MyPanel,是我创建这个画板的名字,这个可以改变,然后是最后在getResource(“/”)中/代表根项目,后面再添加我们添加的图片的名字(文件类型也要写进去)
class MyPanel extends JPanel {//创建一个画板,画板名@Overridepublic void paint(Graphics g) {super.paint(g);g.drawOval(10,10,100,100);Image image = Toolkit.getDefaultToolkit().getImage(MyPanel.class.getResource("/QQ截图20240107001216.png"));g.drawImage(image,30,30,731,1087,this);}
  1. 最后调用g.drawImage方法,依次填入,我们上面创建的图片,图片起始的x,y,和我们图像对于的宽度,高度,最后指定在这个对象生成
设置字体(左下角为坐标点)

对应传入参数

 g.setFont(new Font("隶书",Font.BOLD,50));//第一个设置字体,第二个设置的粗细,最后设置大小g.drawString("孙孙你好",300,75);

让公共类继承 JFrame,并在构造器里创建画板

  1. 添加画板
  2. 设置画板的宽度,高度,
  3. 让画板可视化
  4. 最后在主方法里创建一个公共类的对象
public class tank extends JFrame {MyPanel myPanel ;//声明我们的画板public static void main(String[] args) {new tank();//创建公共类的对象}public tank(){//创造构造器myPanel = new MyPanel();//把画板实例化this.add(myPanel);//添加画板this.setSize(400,400);//设置画板的宽度,高度this.setVisible(true);//设置画板是否可以看见}
}
class MyPanel extends JPanel {//创建一个画板@Overridepublic void paint(Graphics g) {super.paint(g);g.drawOval(10,10,100,100);}
}

当关闭窗口就退出程序

利用setDefaultCloseOperation方法,再使用JFrame的EXIT_ON_CLOSE

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置当关闭窗口就退出程序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/451288.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序(三十三)promise异步写法

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.promise异步与普通异步的写法区别 2.promise异步的优势 源码&#xff1a; index.wxml <view class"preview" bind:tap"onChoose"><image src"{{avatar}}" mode"…

2V2无人机红蓝对抗仿真

两架红方和蓝方无人机分别从不同位置起飞&#xff0c;蓝方无人机跟踪及击毁红方无人机 2020a可正常运行 2V2无人机红蓝对抗仿真资源-CSDN文库

在jetbrains IDEA/Pycharm/Android Studio中安装官方rust插件,开始rust编程

在idea插件市场搜索rust&#xff1a;JetBrains Marketplace &#xff0c;就可以找到rust插件&#xff1a; jetbrains官方rust插件地址&#xff1a;[Deprecated] Rust - IntelliJ IDEs Plugin | Marketplace 直接在idea中搜索rust好像是搜不到的&#xff1a; 需要在这个插件市场…

RabbitMQ_00000

MQ的相关概念 RabbitMQ官网地址&#xff1a;https://www.rabbitmq.com RabbitMQ API地址&#xff1a;https://rabbitmq.github.io/rabbitmq-java-client/api/current/ 什么是MQ&#xff1f; MQ(message queue)本质是个队列&#xff0c;FIFO先入先出&#xff0c;只不过队列中…

俩种方法解决 VScode中 NPM 脚本消失,NPM 脚本未显示在资源管理器侧栏中

npm脚本是npm包管理器的一个功能&#xff0c;允许开发者在package.json文件中定义一系列命令脚本&#xff0c;用于执行各种开发任务。 今天打开准备运行的时候发现找不到NPM脚本了&#xff0c;左侧的一栏完全没有显示&#xff0c;在网上查阅了很多资料后总结出俩个方法可以用来…

多维时序 | Matlab实现CNN-RVM卷积神经网络结合相关向量机多变量时间序列预测

多维时序 | Matlab实现CNN-RVM卷积神经网络结合相关向量机多变量时间序列预测 目录 多维时序 | Matlab实现CNN-RVM卷积神经网络结合相关向量机多变量时间序列预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现CNN-RVM卷积神经网络结合相关向量机多变量时间序…

【前端模板】bootstrap5实现高端手表网页Chrono(适用电商,附带源码)

一、需求分析 高端手表网页是指专门销售高端手表的在线平台或网站。这些网页旨在向消费者展示和销售高级手表品牌的产品。以下是一些常见的功能&#xff1a; 产品展示&#xff1a;高端手表网页提供详细的产品页面&#xff0c;展示不同品牌和型号的高级手表。这些页面通常包括产…

贪心算法篇

“靠漫步&#xff0c;将生趣填饱~” 贪心算法简介&#xff1f; 贪心算法&#xff08;Greedy Algorithm&#xff09;&#xff0c;也称为贪婪算法&#xff0c;是一种在解决问题时采取贪心策略的方法。其基本原理是很简单的&#xff1a; “在每个决策点上都选择当下看似最好的选项…

vulhub中Adminer ElasticSearch 和 ClickHouse 错误页面SSRF漏洞复现(CVE-2021-21311)

Adminer是一个PHP编写的开源数据库管理工具&#xff0c;支持MySQL、MariaDB、PostgreSQL、SQLite、MS SQL、Oracle、Elasticsearch、MongoDB等数据库。 在其4.0.0到4.7.9版本之间&#xff0c;连接 ElasticSearch 和 ClickHouse 数据库时存在一处服务端请求伪造漏洞&#xff08…

MySQL事务和SQL优化

目录 一、什么是事务 二、事务的特征 三、MySQL使用事务 3.1 实现流程&#xff1a; 实现截图&#xff1a; 3.2 实例演示&#xff1a; 四、事务的隔离级别 幻读&#xff1a; 如何解决&#xff1a; 脏读&#xff1a; 不可重复读&#xff1a; 幻读和不可重复读两者区别…

【蓝桥杯冲冲冲】[NOIP2003 普及组] 栈

蓝桥杯备赛 | 洛谷做题打卡day27 文章目录 蓝桥杯备赛 | 洛谷做题打卡day27题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示题解代码我的一些话 [NOIP2003 普及组] 栈 题目背景 栈是计算机中经典的数据结构&#xff0c;简单的说&#xff0c;栈就是限制在一…

【京东云新品发布月刊】2024年1月产品动态来啦

1&#xff09;【莫奈可视化平台】新品上线 京东莫奈可视化平台通过自由拖拽、图形化编辑、所见即所得的方式&#xff0c;快速实现极致酷炫、直观清晰的视觉场景&#xff0c;将海量繁杂数据背后所蕴含的价值更直观、深层、全面的展现出来&#xff0c;辅助决策者合理决策。 2&a…