C++之Easyx——图形库的基本功能(1):界面操作

最近,我觉得使用控制台编写游戏太没意思了!!

所以我开始研究图形库了~

一、setinitmode

        函数定义

void EGEAPI setinitmode(int mode, int x = CW_USEDEFAULT, int y = CW_USEDEFAULT); //设置初始化模式,mode=0为普通,1为无边框窗口,xy是初始窗口坐标

        使用说明

void EGEAPI setinitmode(无边框模式是否开启, 图形界面的初始x坐标, 图形界面的初始y坐标); //设置初始化模式,mode=0为普通,1为无边框窗口,xy是初始窗口坐标

初始化图形界面的有无边框(0没有,1有)和x、y坐标。

二、initgraph

        函数定义

void EGEAPI initgraph(int Width, int Height, int Flag);        // 初始化图形环境
// Debug 配置下默认不显示 LOGO,Release 模式下默认显示。
#if !defined(NDEBUG) || defined(DEBUG) || defined(_DEBUG)
inline void EGEAPI initgraph(int Width, int Height) {initgraph(Width, Height, getinitmode());
}
#else
inline void EGEAPI initgraph(int Width, int Height) {initgraph(Width, Height, getinitmode()|INIT_WITHLOGO);
}

         使用说明

initgraph(x, y, 类型)

创建一个长x、高y的图形界面。

(当然,类型也可以不填)

但是不是使用了initgraph就会出现一个图形界面不动的,它会随着代码变化。所以必须在程序结束后使用Sleep或system("pause")暂停一下或是等待,还有一个函数,待会儿会讲。

                 类型

enum initmode_flag {INIT_DEFAULT        = 0x0,INIT_NOBORDER       = 0x1,INIT_CHILD          = 0x2,INIT_TOPMOST        = 0x4,INIT_RENDERMANUAL   = 0x8,INIT_NOFORCEEXIT    = 0x10,INIT_UNICODE        = 0x20,INIT_WITHLOGO       = 0x100,INIT_ANIMATION      = INIT_DEFAULT | INIT_RENDERMANUAL | INIT_NOFORCEEXIT,
};

INIT_DEFAULT 默认参数,这与我们不填任何参数是一样的。(NULL)

类型代码以及含义
代码释义

INIT_NOBORDER 

没有标题栏,无框窗口

INIT_CHILD

 (其实我还不知道,反正翻译出来是初始化小朋友)

INIT_TOPMOST 

生成在最顶端,不可被其他窗口覆盖

INIT_RENDERMANUAL

手动渲染模式

INIT_NOFORCEEXIT

使用者不可以强制退出
INIT_UNICODE 允许使用UNICODE码UTF - 8

 INIT_WITHLOGO

 显示出场动画:

INIT_ANIMATION ......(你懂的,I Do Not Know

如果想要同时使用两个或多个模式,只需要用或(|)即可。

三、setcaption

        函数定义

void EGEAPI setcaption(LPCSTR  caption);

        使用说明

void EGEAPI setcaption(图形界面标题栏标题);

一般的图形界面标题是EGE20.08 GCC9.2x86,担setcaption可以更改图形库标题。

                示例程序

#include <graphics.h>
using namespace std;int main(void)
{initgraph(250, 250);setcaption("快乐星空Test");system("pause");return 0;
}

四、movewindow

        函数定义

void EGEAPI movewindow(int x, int y, bool redraw = true);	//移动窗口

        使用说明

void EGEAPI movewindow(把图形界面移到x坐标, 把图形界面移到y坐标);	//移动窗口

把图形界面移到(x, y)坐标。

五、getch

        函数定义

int EGEAPI getch();

        使用说明

int EGEAPI getch();

是不是很熟系?其实这就≈conio.h里面的_getch(),意思是按一下任意键继续。所以在使用graphics.h时使用conio.h是不可能的!

六、closegraph

        函数定义

​void EGEAPI closegraph();

        使用说明

void EGEAPI closegraph();

关闭图形界面。(其实我觉得直接return也可以)

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

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

相关文章

Linux篇:开发工具yum/vim/gcc/g++/Makefile/gdb

一. yum&#xff1a;软件包管理器 什么是软件包&#xff1f; 在Linux 下安装软件 , 一个通常的办法是下载到程序的源代码 , 并进行编译 , 得到可执行程序 . 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好 , 做成软件包 (可以理解成windows 上的安装程序) 放在…

遥遥领先的大语言模型GPT-4的图像合成能力如何?

遥遥领先的多模态大语言模型GPT-4的图像合成能力如何&#xff1f;今天分享一个建立了一个用于评估GPT-4生成图像中纹理特征保真度的基准&#xff0c;其中包括手工绘制的图片及其AI生成的对应物。本研究的贡献有三个方面&#xff1a;首先&#xff0c;对基于GPT-4的图像合成特征的…

C++ 之LeetCode刷题记录(三十三)

&#x1f604;&#x1f60a;&#x1f606;&#x1f603;&#x1f604;&#x1f60a;&#x1f606;&#x1f603; 开始cpp刷题之旅。 目标&#xff1a;执行用时击败90%以上使用 C 的用户。 11. 盛最多水的容器 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;…

存内计算的主流技术方案

1 概述 和近数据计算不同&#xff0c;存内计算直接使用内存单元做计算&#xff0c;主要利用电阻和电流电压的物理关系表达运算过程。存内计算依赖于新型的非易失性存储器&#xff0c;如 ReRAM和 PCM 等。在所有存内计算操作中&#xff0c;最普遍的是利用基尔霍夫定律&#xff0…

shell基础实验(1)

1、判断当前磁盘剩余空间是否有20G&#xff0c;如果小于20G&#xff0c;则将报警邮件发送给管理员&#xff0c;每天检查次磁盘剩余空间。 1.1.安装邮件服务,配置邮件服务 [rootserver ~]# yum install mailx -y[rootserver ~]# vim /etc/mail.rc set from1580540058qq.com …

2023 re:Invent 用 PartyRock 10 分钟构建你的 AI 应用

前言 一年一度的亚马逊云科技的 re:Invent 可谓是全球云计算、科技圈的狂欢&#xff0c;每次都能带来一些最前沿的方向标&#xff0c;这次也不例外。在看完一些 keynote 和介绍之后&#xff0c;我也去亲自体验了一些最近发布的内容。其中让我感受最深刻的无疑是 PartyRock 了。…

学习笔记-Git

Git 问题一描述解决方法注意事项 问题一 描述 在commit和push的时候因为网络太慢了中途强行关闭了进程&#xff0c;而push的内容因为文件过大导致无法正常push 按照原本的流程在push的时候会提示失败&#xff0c;并且需要在解决了大文件之后重新push 而因为中途中断了&#x…

Java 后端面试指南

面试指南 TMD&#xff0c;一个后端为什么要了解那么多的知识&#xff0c;真是服了。啥啥都得了解 MySQL MySQL索引可能在以下几种情况下失效&#xff1a; 不遵循最左匹配原则&#xff1a;在联合索引中&#xff0c;如果没有使用索引的最左前缀&#xff0c;即查询条件中没有包含…

C# OpenCvSharp DNN Low Light image Enhancement

目录 介绍 效果 模型信息 项目 代码 下载 C# OpenCvSharp DNN Low Light image Enhancement 介绍 github地址&#xff1a;https://github.com/zhenqifu/PairLIE 效果 模型信息 Model Properties ------------------------- ------------------------------------------…

javaSE多态

文章目录 斜体样式1.1 面向对象三大特征 ?1.2 什么是多态 ?*斜体样式*1.3 多态的前提1.4 多态的成员访问特点1.5 多态的优缺点1.6 多态的转型1.7 多态的转型注意1.8 解决转型安全隐患 2 内部类2.1 内部类的分类什么是内部类 ?什么时候使用内部类 ?内部类分类 ? 2.2 成员内…

四、分类算法 - 朴素贝叶斯算法

目录 1、朴素贝叶斯算法 1.1 案例 1.2 联合概率、条件概率、相互独立 1.3 贝叶斯公式 1.4 朴素贝叶斯算法原理 1.5 应用场景 2、朴素贝叶斯算法对文本进行分类 2.1 案例 2.2 拉普拉斯平滑系数 3、API 4、案例&#xff1a;20类新闻分类 4.1 步骤分析 4.2 代码分析 …

数组方法深入探究(1)--atcopyWithin

at 数组at方法&#xff08;获取数组中特定位置的元素&#xff09; const arr [1M, 2M, 3M]; console.log(arr.at(-1)) // 倒数第一个值 console.log(arr.at(-2)) // 倒数第二个值 console.log(arr.at(0)) // 正数第一个 console.log(arr.at(1)) // 正数第二个 copyWithin …

Python 进阶语法:JSON

1 什么是 JSON&#xff1f; 1.1 JSON 的定义 JSON 是 JavaScript Object Notation 的简写&#xff0c;字面上的意思是 JavaScript 对象标记。本质上&#xff0c;JSON 是轻量级的文本数据交换格式。轻量级&#xff0c;是拿它与另一种数据交换格式XML进行比较&#xff0c;相当轻…

【vue项目升级node版本】Module not foun: Error: Can‘t resolve “async hooks’问题解决方案

项目本地启动一直出现这个顽固的警告&#xff0c;并且在项目页面一直显示无法使用 找了很多的文章&#xff0c;今天终于找到解决办法 解决办法思路来源于:【vue项目升级node版本】Module not foun: Error: Can‘t resolve “async hooks’问题解决方案_cant resolve async_hoo…

LINUX读取RTC实时时钟时间

linux 读写RTC时间_linux rtc 读写-CSDN博客

maven 打包命令

Maven是基于项目对象模型(POM project object model)&#xff0c;可以通过一小段描述信息&#xff08;配置&#xff09;来管理项目的构建&#xff0c;报告和文档的软件项目管理工具。 Maven的核心功能便是合理叙述项目间的依赖关系&#xff0c;通俗点讲&#xff0c;就是通过po…

stm32——hal库学习笔记(ADC)

这里写目录标题 一、ADC简介&#xff08;了解&#xff09;1.1&#xff0c;什么是ADC&#xff1f;1.2&#xff0c;常见的ADC类型1.3&#xff0c;并联比较型工作示意图1.4&#xff0c;逐次逼近型工作示意图1.5&#xff0c;ADC的特性参数1.6&#xff0c;STM32各系列ADC的主要特性 …

LeetCode 0106.从中序与后序遍历序列构造二叉树:分治(递归)——五彩斑斓的题解(若不是彩色的可以点击原文链接查看)

【LetMeFly】106.从中序与后序遍历序列构造二叉树&#xff1a;分治&#xff08;递归&#xff09;——五彩斑斓的题解&#xff08;若不是彩色的可以点击原文链接查看&#xff09; 力扣题目链接&#xff1a;https://leetcode.cn/problems/construct-binary-tree-from-inorder-an…

HarmonyOS Stage模型基本概念讲解

本文 我们来说harmonyos中的一种应用模型 Stage模型 官方提供了两种模型 一种是早期的 FA模型 另一种就是就是 harmonyos 3.1才开始的新增的一种模型 Stage模型 目前来讲 Stage 会成为现在乃至将来 长期推进的一种模型 也就是 无论是 现在的harmonyos 4.0 乃至 之后要发布的 …

五、分类算法 总结

代码&#xff1a; from sklearn.datasets import load_iris, fetch_20newsgroups from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.model_selection import train_test_split, GridSearchCV from sklearn.naive_bayes import MultinomialNB from s…