C/C++图形库EasyX保姆级使用教程(二) 图形化窗口设置以及简单图形的绘制

这篇具有很好参考价值的文章主要介绍了C/C++图形库EasyX保姆级使用教程(二) 图形化窗口设置以及简单图形的绘制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

C/C++图形库EasyX保姆级使用教程

第一章 Microsoft Visual Studio 2022和EasyX的下载及安装使用
第二章 图形化窗口设置以及简单图形的绘制



前言

本篇文章,我将给大家展示VC中的图形化编程,内容比较详细!

一、窗口!

日常写程序,我们用的最多的就是控制台的窗口,但是,今天我们讲的是图形化编程,那么控制台窗口变成了图形化窗口!!!
那么,就有了一个问题:


1.如何生成一个图形化窗口?

1.头文件

首先我们需要一个名为#include<easyx.h>头文件也可以把#include<graphics.h>加上

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;

2.初始化一个图形化窗口

那么在这样的条件下,我们可以用initgraph创建一个窗口

  1. initgraph();是创建图形化窗口的重要内容,其中initgraph()中的参数包括:
    initgraph(窗口的长,窗口的宽度,显示控制台);
  2. 注意:最后一个参数可以不写,不写时是只有图形化窗口
  3. initgraph(800, 600);
  4. 我们好像不能只是去创建窗口,我们还要将窗口关闭,closegraph();这个函数可以将你创建的窗口关闭【虽然基本也用不着这个…】
  5. 但是在写代码的时候还要注意一点,就是在结尾出加入一个while(true);不然整个程序会一闪而过,详细代码如下:
#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main(){
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	while(true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

效果如下图所示:
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法
可以看到,窗口是黑乎乎一片,没有任何东西,如果觉得单调,那么就看一下下面的东西吧!


3.设置窗口背景颜色

我们可以看到,只是有黑乎乎的一片会显得程序尤为单调,那么我们就需要用到更改背景颜色的函数了:setbkcolor(颜色英文单词大写);RGB(红[int],绿[int],蓝[int]);


刷新函数cleardevice()

这个函数的主要用途在于更换完背景颜色后,可以将其显示出来,换句话说,如果不用这个函数,设置完背景颜色就无法显示

cleardevice();

设置窗口颜色:setbkcolor()

在使用setbkcolor函数时,我们只需要使用其英文单词的大写,以下是一些可以用到的颜色:

颜色 代码
BLACK 0
BLUE 0xAA0000
GREEN 0x00AA00
CYAN 0xAAAA00
RED 0x0000AA
MAGENTA 0xAA00AA
BROWN 0x0055AA
LIGHTGRAY 0xAAAAAA
DARKGRAY 0x555555
LIGHTBLUE 0xFF5555
LIGHTGREEN 0x55FF55
LIGHTCYAN 0xFFFF55
LIGHTRED 0x5555FF
LIGHTMAGENTA 0xFF55FF
YELLOW 0x55FFFF
WHITE 0xFFFFFF

所以,当我们想要更改背景颜色为红色时,我们就可以用setbkcolor(RED);之后加入cleardevice();来实现

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main() {
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	setbkcolor(RED);/*设置背景颜色为红色*/
	cleardevice();/*刷新窗口*/
	while (true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

这样,我们就得到了一个红色背景的程序,如下图所示:
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法


设置窗口颜色:RGB(红,绿,蓝)

当我们觉得以上颜色还不够用时,我们就可以使用RGB();函数,使用方法如下:setbkcolor(RGB(253,151,95));
完整代码:

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main() {
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	setbkcolor(RGB(253,151,95));/*通过了RGB进行调色*/
	cleardevice();/*刷新窗口*/
	while (true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

运行结果图展示:easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法
另外,当我们需要使用RGB进行调色时,我们只需要打开画图,找到如下按钮:
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法
随意找到一个颜色,找到右侧对应的RGB值,将其写入到代码中,如下图所示:

easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法


二、绘制简单图形

1.画一条直线

在VC中,我们想要画一条直线,只需要使用到line函数,line()的使用方法为:
line(起始点x,起始点y,终点x,终点y);
例如我们想要从(0,0)的位置画到(800,600)的位置,这样的一条对角线,我们只需要使用line(0,0,800,600);
这样就可以画一条直线了!!!
详细代码如下:

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main() {
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	setbkcolor(RGB(253,151,95));/*通过了RGB进行调色*/
	cleardevice();/*刷新窗口*/
	line(0, 0, 800, 600);/*从起始点(0,0)画到结束点(800,600)*/
	while (true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

这样我们就得到了一条对角线了【其实画直线也是可以的】
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法


2.画圆

众所周知,圆的英文单词是circle,那么在VC中,画圆时,我们就要用到circle函数,函数的使用方法为:
circle(圆心x,圆心y,圆半径);
比如,我们要在(100,100)的位置画一个半径为50的圆,那么就要这样些:circle(100, 100, 50);

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main() {
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	setbkcolor(RGB(253,151,95));/*通过了RGB进行调色*/
	cleardevice();/*刷新窗口*/
	line(0, 0, 800, 600);/*从起始点(0,0)画到结束点(800,600)*/
	circle(100, 100, 50);/*circle(圆心x,圆心y,圆半径)  画圆*/
	while (true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

效果如下:
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法


3.画矩形和正方形

众所周知,矩形在英语里的英文单词为rectangle,所以在使用VC做图形化时,我们就要用的rectangle()函数,具体操作如下:
rectangle(左上角x,左上角y,右下角x,右下角y);
画矩形时,我们就只需要知道左上角的x,y的值以及右小角的x,y的值,就可以画出矩形了,当然,如果说要画正方形,就要保证每条边相等,也就是右下角x-左上角x=右下角y-左上角y只要满足这个条件,就可以画出矩形来了!!!
代码如下:

#include<iostream>
#include<easyx.h>
#include<graphics.h>
using namespace std;
int main() {
	initgraph(800, 600);/*生成一个长宽为800,600的图形化窗口*/
	setbkcolor(RGB(253,151,95));/*通过了RGB进行调色*/
	cleardevice();/*刷新窗口*/
	line(0, 0, 800, 600);/*从起始点(0,0)画到结束点(800,600) 画直线*/
	circle(100, 100, 50);/*circle(圆心x,圆心y,圆半径)  画圆*/
	rectangle(300, 300, 400, 400);/*画矩形   rectangle(左上角x,左上角y,右下角x,右下角y)*/
	while (true);/*防止程序一闪而过*/
	closegraph();/*关闭图形化窗口*/
	return 0;
}

效果图如下:
easyx窗口没有回车,C++,EasyX图形库,c语言,c++,开发语言,算法


总结

本篇文章主要讲解了VC中初始化一个窗口以及绘制一些简单图形,一下篇文章我将要讲解如何让图形拥有填充的颜色!
最后,如果你觉的文章写的还不错的话,求点赞求收藏求打赏求转发,最重要的是点一个大大的关注,各位的支持是我创作的最大动力!文章来源地址https://www.toymoban.com/news/detail-804408.html

到了这里,关于C/C++图形库EasyX保姆级使用教程(二) 图形化窗口设置以及简单图形的绘制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 樱花树盛开的季节,我用简单的C代码绘制了一棵樱花树向她表白~『C/C++&图形库EasyX』

    🌸作者简介: 花想云 ,在读本科生一枚,致力于 C/C++、Linux 学习。 🌸 本文收录于 初学C语言必会的20个小游戏专栏 ,本专栏主要内容为利用C/C++与图形库EasyX实现各种有趣的小游戏。 🌸 相关专栏推荐: C语言初阶系列 、 C语言进阶系列 、 数据结构与算法 本文主要内容为

    2023年04月19日
    浏览(42)
  • 超详细,多图,PVE安装以及简单设置教程(个人记录)

    - 写这个的目的是因为本人健忘所以做个记录以便日后再折腾时查阅,。 - 本人笔拙如有选词,错字,语法,标点错误请忽视,大概率知道了也不会修改,本人能看懂就好。 - 内容仅适用于本人的使用环境,不同环境请忽视或仅作参考。 - 文中出现的内容来自网络和本人浅薄的

    2024年02月04日
    浏览(35)
  • Uniapp使用腾讯地图并进行标点创建和设置保姆教程

    我们在HBuilder左上角点击文件新建创建一个项目 然后下面这张图的话就是uniapp创建项目过程当中需要注意的一些点和具体的操作 然后我们创建完项目之后进入到项目pages文件夹下,创建一个新的Vue页面或者是也可以直接使用里面的Vue页面,然后我们需要打开Uniapp官网链接: h

    2024年02月13日
    浏览(29)
  • EasyX图形化学习(三)

    即每秒钟界面刷新次数,下面以60帧为例: 1.数据类型 clock_t: 用来保存时间的数据类型。 2.clock( ) 函数: 用于返回程序运行的时间,无需参数。 3.例子: 先定义所需帧率: 然后定义两个变量,用于表示一次循环运行前后的时间,再用Sleep函数休眠即可。 1.定义图片变量: 数

    2024年01月19日
    浏览(47)
  • easyx图形库基础4:贪吃蛇

    1.食物不可以生成到画布的外面; 2.不可以生成在蛇的身体上面; 3.食物是随机生成的; 1.蛇头碰到墙壁: 2.蛇头碰到蛇身体:

    2024年02月12日
    浏览(29)
  • easyx图形库基础:2.基本运动+键盘交互

    1.如何实现动画: 相信大家已经对动画的原理已经不陌生了。想要目标物体动起来,只需要逐个播放目标物体每一时刻位置的图片。只要播放的速度足够快,人们就会在视觉上认为目标物体动起来了。 帧率:具有连续性的一些图片在1秒中绘制的个数。 物体运动的速度单位一

    2024年02月12日
    浏览(31)
  • easyx图形库基础:3实现弹球小游戏

    画面效果: 1.球的中心点坐标,球的半径, 2.球的实际速度,水平竖直的分量速度。 3.球的颜色。 4.定义一个结构体去保存这些数值。

    2024年02月12日
    浏览(31)
  • 尝试用easyx窗口实现鼠标的操作

      (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 首先就是常规引用头文件 #includestdio.h #includegraphics.h  接着就是设置窗口的大小 initgraph(1000, 640, SHOWCONSOLE);//创建一个窗口 setbkcolor(WHITE);//设置窗口颜色 cleardevice();//刷新一

    2024年02月09日
    浏览(56)
  • uniapp - 微信小程序端引入 Echarts 图表及使用详细教程,简单快速的解决方案(拒绝复杂的过程,附带详细的使用示例保姆级教程)

    现在各种平台的文章都太乱了,基本上实测无效。。。 帮你在uniapp开发中,微信小程序平台端使用 echats 图表的详细教程,快速并且简单轻松搞定。 下面是最后的运行结果,随便用的一个图表进行展示,图表更多用法详见文档!

    2024年02月10日
    浏览(45)
  • SDL窗口创建以及简单显示(1)

     1. 使用Qt Creator创建一个C项目  2. 将SDL库文件放到源文件目录下  在项目pro文件中添加库文件  使用SDL创建一个窗口 运行效果  

    2024年02月08日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包