15天学会EasyX 第2天:EasyX里的设备坐标与打开关闭绘图窗口

news2024/11/28 6:49:49

本文为山城瑞宝创作,转载请标注版权

本文里的函数使用都不需要先写明原型,原型就在其对应的库里(直接用)

目录

1. 设备及其坐标

2. 如何打开与关闭绘图窗口

 2.1. initgraph

2.1.1. 没有flag的代码示例

2.1.2. 使用了单个flag的代码示例

2.1.3. 使用了多个flag的代码示例

2.2. closegraph

2.2.1. 使用closegraph的示例代码

3. 本文内容结合示例代码

4. flag绘图窗口样式巧记


1. 设备及其坐标

首先,我们需要明白,所谓的“设备”大多数时候其实就是指的绘图窗口。在EasyX进行代码编写时,搞清楚你所要呈现图像的位置是十分重要的。

坐标默认的原点在窗口的左上角,X轴向右为正,Y 轴向下为正,度量单位是像素点。
在EasyX中,设备分两种,一种是默认的绘图窗口,另一种是IMAGE对象

画个图给大家理解一下吧:

 

 举个例子,这个图里面棕色点的坐标是(50,60)而不是(50,-60)

2. 如何打开与关闭绘图窗口

要想打开绘图窗口,我们需要EasyX的头文件:

#include<easyx.h>或是#include<graphics.h>

两个头文件都是可以的,不过graphics.h的内容比easyx.h的内容要多一点,因为graphics.h里面包含了easyx.h(最好两个头文件只写一个)

#include<bits/stdc++.h>    //这个可以暂时不加,后期要用变量再加
#include<graphics.h>

 2.1. initgraph

这个时候,我们打开绘图窗口需要用到的一个函数,就是initgraph();

我们来看一下函数的原型

HWND initgraph(
	int width,
	int height,
	int flag = NULL
);

里面的width指的是绘图窗口的宽度,height指的是绘图窗口的高度。这两个变量的大小就决定了你的绘图窗口的大小

那么,里面的flag是干嘛的呢?我为大家整理了这四种用法

flag是的是绘图窗口的样式,默认为NULL,也就是说你不填也没有关系

含义
EW_DBLCLKS在绘图窗口中支持鼠标双击事件。
EW_NOCLOSE禁用绘图窗口的关闭按钮。
EW_NOMINIMIZE禁用绘图窗口的最小化按钮。
EW_SHOWCONSOLE显示控制台窗口。

2.1.1. 没有flag的代码示例

#include<graphics.h>
#include<conio.h>//用来使用getch()函数 
	int main(){
		initgraph(500,500);
		getch();//按任意键退出 
		return 0;
	}

2.1.2. 使用了单个flag的代码示例

#include<graphics.h>
#include<conio.h>//用来使用getch()函数 
	int main(){
		initgraph(500,500,EW_SHOWCONSOLE);//同时显示控制台 
		getch();//按任意键退出 
		return 0;
	}

2.1.3. 使用了多个flag的代码示例

#include<graphics.h>
#include<conio.h>//用来使用getch()函数 
	int main(){
		initgraph(500,500,EW_SHOWCONSOLE|EW_NOMINIMIZE);//中间用"|"连接,打开控制台并禁用最小化按钮 
		getch();//按任意键退出 
		return 0;
	}

2.2. closegraph

这个函数是我们关闭绘图窗口会用到的,即closegraph();

这个函数直接用就可以了,这是函数原型:

void closegraph();

2.2.1. 使用closegraph的示例代码

#include<graphics.h>
#include<windows.h> //用来使用sleep函数 
	int main(){
		initgraph(500,500); 
		Sleep(2000);//等待两秒 
		closegraph();//关闭绘图窗口 
		return 0;
	}

3. 本文内容结合示例代码

对了,提示一下,如果控制台被关掉,那么绘图窗口也会关闭哦!

大家可以试着运行一下这个代码:

#include<graphics.h>
#include<windows.h> //用来使用sleep函数 
#include<conio.h>
	int main(){
		initgraph(800,600,EW_NOCLOSE|EW_SHOWCONSOLE); 
		getch();//等待,直到按下某键 
		closegraph();//关闭绘图窗口 
		return 0;
	}

4. flag绘图窗口样式巧记

这是我自己整理了一些,有点拙劣,请大家接受哈

拆分含义
EW_DBLCLKS
EW_NOCLOSENO+CLOSE禁止关闭
EW_NOMINIMIZENO+MINIMIZE禁止最小化
EW_SHOWCONSOLESHOW+CONSOLE打开(展示)控制台

好了,今天就讲到这里。我是瑞宝,我们下期再见。 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

会声会影2023旗舰中文试用版下载安装教程

会声会影2023版(Corel VideoStudio)是一款专业视频制作软件及视频剪辑软件,可以剪辑合并视频,制作视频,屏幕录制,光盘制作,视频后期编辑,添加特效,字幕和配音等操作,界面美观,素材丰富,操作简洁而! 会声会影有多轨道式编辑功能&#xff0c;可以独立处理视频、图片、音频等素材&…

MATLAB笔记总结(1) 东华大学MOOC

循环语句 MATLAB函数句柄 https://zhuanlan.zhihu.com/p/266263265 https://blog.csdn.net/shaozheng0503/article/details/130305984?spm1001.2014.3001.5501 数据和变量 表达式 分号;) 逗号(, ), 省略号(3个英文句点…)。 历史指令调用&#xff1a;用方向键(↑↓) 数据…

离散分类和非离散分类问题中的模型评价

离散分类问题中的模型评价 假设分类目标只有两类&#xff1a;正样本&#xff08;positive&#xff09;和负样本&#xff08;negative&#xff09;。 分类器的分类结果会出现以下四种情况&#xff1a; TP: 若一个实例为正&#xff0c;且被预测为正&#xff0c;即为“真正类”(…

chatgpt赋能python:Python去空格输出:优化您的代码和网站速度

Python去空格输出&#xff1a;优化您的代码和网站速度 Python是一种简单易用的编程语言&#xff0c;广泛用于各种应用和网站开发。然而&#xff0c;Python的代码输出&#xff08;如HTML和CSS&#xff09;中不可避免地包含了空格、制表符和换行符。这些额外的字符可能会影响网站…

模式识别算法的常见评价指标TP/FP/FN/TN,ROC,DET,EER

文章目录 TP/FP/FN/TN&#xff08;TA/FA/FR/TR&#xff09;误报率&#xff08;FAR&#xff09;漏报率&#xff08;FRR&#xff09; ROC曲线&#xff08;Receiver Operating Characteristic Curve&#xff0c;受试者特征曲线&#xff09;DET曲线&#xff08;Detection Error Tra…

Maven高级——继承与聚合——版本锁定

在前面的文章已经实现了Maven的继承&#xff0c;初次之外&#xff0c;还可以在父工程当中统一管理依赖的版本。 场景介绍 有一些依赖不是各个模块共有的&#xff0c;则需要到那些子模块当中单独配置了&#xff0c;这时需要到各个模块单独配置了&#xff0c;比如下图有一个模块…

【小沐学Python】Python实现Web服务器(CentOS+Docker下部署Flask)

&#x1f37a;基于Python的Web服务器系列相关文章编写如下&#x1f37a;&#xff1a; &#x1f388;【Web开发】Python实现Web服务器&#xff08;Flask快速入门&#xff09;&#x1f388;&#x1f388;【Web开发】Python实现Web服务器&#xff08;Flask案例测试&#xff09;&a…

Pyside6-第五篇-单选按钮QRadioButton

今天是Pyside6的第五篇内容。一起来看单选按钮。 QRadioButton。 class QRadioButton(QAbstractButton):"""QRadioButton(self, parent: Optional[PySide6.QtWidgets.QWidget] None) -> NoneQRadioButton(self, text: str, parent: Optional[PySide6.QtWidg…

9.wxss

wxss基本满足所有css&#xff0c;并在css的基础上增加了 rpx 尺寸单位import 导入样式 目录 1 rpx 2 import 3 全局样式与局部样式 4 样式权重 1 rpx rpx(responsive pixel)&#xff0c;中文名叫响应像素&#xff0c;它是用来解决屏幕适配的尺寸单位&#xff0c;它…

Flink第九章:Flink CEP

系列文章目录 Flink第一章:环境搭建 Flink第二章:基本操作. Flink第三章:基本操作(二) Flink第四章:水位线和窗口 Flink第五章:处理函数 Flink第六章:多流操作 Flink第七章:状态编程 Flink第八章:FlinkSQL Flink第九章:Flink CEP 文章目录 系列文章目录前言一、简单案例1.Logi…

Linux高性能服务器编程|阅读笔记:第11章 - 定时器

目录 简介系列笔记11.1 socket选项SO_RCVTIMEO和SO_SNDTIMEO11.2 SIGALRM信号11.2.1 基于升序链表的定时器11.2.2 处理非活动连接11.3 I/O复用系统调用的超时参数11.4 高性能定时器11.4.1 时间轮11.4.2 时间堆结语简介 Hello! 非常感谢您阅读海轰的文章,倘若文中有错误的地方…

光储存技术及原理

描述 信息资料迅速增长是当今社会的一大特点。有人统计&#xff0c;科技文献数量大约每7年增加1倍&#xff0c;而一般的情报资料则以每2年~3年翻一番的速度增加。大量资料的存储、分析、检索和传播&#xff0c;迫切需要高密度、大容量的存储介质和管理系统。 1898年荷兰的Vald…

Jenkins+Docker 实现一键自动化部署项目!步骤齐全,少走坑路

本文章实现最简单全面的Jenkinsdockerspringboot 一键自动部署项目&#xff0c;步骤齐全&#xff0c;少走坑路。 环境&#xff1a;centos7git(gitee) 简述实现步骤&#xff1a;在docker安装jenkins&#xff0c;配置jenkins基本信息&#xff0c;利用Dockerfile和shell脚本实现…

javaScript蓝桥杯-----芝麻开门

目录 一、介绍二、准备三、目标四、代码五、完成 一、介绍 在阿里巴巴和四十大盗的故事中&#xff0c;阿里巴巴因为无意中知道了开门的咒语人生发生了翻天覆地的变化&#xff0c;四十大盗也因为咒语的泄露最终丧命。芝麻开门的咒语作为重要的信息推动着故事的发展。下面由你来…

初识网络之TCP网络套接字

目录 一、TCP常用网络接口 1. 监听服务器 2. 接收链接 3. 发起连接 二、实现一个简单的tcp程序 1. 日志函数 2. 服务端文件 2.1 .hpp文件 2.2 .cpp文件 3. 客户端文件 3.1 .hpp文件 3.2 .cpp文件 4. 程序测试 三、实现支持多个用户并发访问的tcp程序 1. 当前程序…

解决Dockerfile错误: ERROR [3/3] RUN yum install -y wget vim net-tools

RUN yum install -y wget vim net-tools该命令是在使用容器编排工具&#xff08;如Docker&#xff09;的Dockerfile文件中执行的。它尝试安装一些常用的软件包&#xff0c;如wget、vim、net-tools。根据错误消息&#xff0c;执行此命令时发生了3个错误。 可能的原因包括&#…

chatgpt赋能python:Python去除非法字符:让你的数据更干净、更有效

Python去除非法字符&#xff1a;让你的数据更干净、更有效 在处理数据时&#xff0c;非法字符是常见的问题。它们可能是一些无意义的符号、特殊字符或非常规字符等等。如果不被正确处理&#xff0c;这些非法字符可能会给你带来麻烦&#xff0c;如导致脚本失败、破坏数据完整性…

LeetCode中等题合集 python

目录 3. 无重复字符的最长子串53. 最大子数组和80. 删除有序数组中的重复项 II442. 数组中重复的数据209. 长度最小的子数组59. 螺旋矩阵 II24. 两两交换链表中的节点19. 删除链表的倒数第 N 个结点142. 环形链表 II 3. 无重复字符的最长子串 滑动窗口&#xff0c;类似的题目还…

Biological Psychiatry:利用TMS-EEG识别难治性抑郁症间歇性θ脉冲刺激的神经生理标志物

前言 难治性抑郁症(TRD)是指在经过足够疗程的药物治疗或心理治疗后&#xff0c;症状没有得到改善的重度抑郁。大约有30%的重度抑郁症(MDD)属于难治性抑郁症。重复经颅磁刺激(rTMS)可引起大脑皮层兴奋或抑制性的改变&#xff0c;是TRD的有效干预措施。间歇性θ脉冲刺激(iTBS)一…

ClickHouse 基础

ClickHouse是2016年开源的列式存储数据库&#xff08;DBMS&#xff09;&#xff0c;使用C语言编写&#xff0c;主要用于在线分析处理查询OLAP&#xff0c;能够使用SQL查询实时生成分析数据报告。 一、列式存储 以下面的Tabel为例 IDNameGender1吴彦祖男2刘亦菲女3陈冠希男 …