1、easyX的原理
基于Windows图形编程,将Windows下的复杂程序过程进行封装,仅给用户提供一个简单熟悉的接口。用户对于图形库中函数的调用,最终都会由Windows底层的API实现。
在官网搜索eaxyx下载点击安装即可
接着引用<
easyX的坐标
坐标原点默认为窗口的左上角,X轴向右为正,Y轴向下为正,度量单位为像素点。
已打开的界面左上的直角为原点做x轴y轴
基本的有如下
1、窗口函数
2. 图形绘制
3 文字绘制
4. 文件图片引入
initgraph(int width, int height, int flag = NULL); //用于初始化绘图窗口(创建窗口)
width 即窗口的宽 height 即窗口的高 flag 为窗口的样式默认为NULL
第三个参数可以用来设置控制台和绘图窗口的最小化和关闭按钮
EW_SHOWCONSOLE //显示控制台
EW_NOCLOSE //没有关闭按钮 (可以用来恶搞 ^_^)
EW_NOMINIMIZE //没有最小化按钮
closegraph(); //关闭绘图窗口
cleardevice(); //清空绘图设备
1.画圆 circle(int x,int y,int r);
画圆 circle(int X,int Y,int R); //以(x,y)为圆心,R为半径画圆 另外两种样式相同
2.画矩形 rectangle(int x1,int y1,int x2,int y2);
rectangle(int x1,int y1,int x2,int y2); //以(x1,y1)为左上顶点(x2,y2)为右下顶点画矩形
3.画线条 line(int x1,int y1,int x2,int y2) ;
line(int x1,int y1,int x2,int y2) ; //连接(x1,y1)和(x2,y2)的一条线段
4.设置填充颜色 setfillcolor(颜色);
setfillcolor(颜色); //设置填充颜色,如setfillcolor(RED);
5.设置线条颜色 setlinecolor(颜色);
setlinecolor(颜色); //设置线条颜色,如setlinecolor(YELLOW);
6.设置线条样式 setlinestyle(样式, 线宽);
setlinestyle(样式, 线宽); //设置线条样式,setlinestyle(PS_SOLID, 3); 宽为3的实线
7.设置背景颜色 setbkcolor(颜色);
setbkcolor(颜色); //设置背景颜色,如 setbkcolor(WHITE);
8.设置背景模式 setbkmode(模式);
setbkmode(模式); //设置背景模式,一般使用设置为透明 setbkmode(TRANSPARENT);
1.绘制文字 outtextxy(int x,int y,文字);
outtextxy(int x,int y,LPCTSTR str); //在(x,y)输出文字str,如 outtextxy(10,10,"你好");
注意:使用字符串时出现错误
解决方法: 1.在字符串前加上L 。 即outtextxy(10,10,L"你好");
2.进入项目 -> 属性 ->配置属性 ->常规 -> 字符集 -> 改为多字节字符集
2.设置字体颜色 settextcolor(颜色);
settextcolor(颜色); //设置字体颜色,如 settextcolor(BLUE);
3.设置字体样式 settextstyle(int Height,int Width, 样式);
settextstyle(int Height,int Width, 样式); //设置字体类型,如settextstyle(30,0,"行楷");
Height : 即字体的平均高度 Width : 即字体的平均宽度(为0表示自适应)
3.获取文本的宽度 textwidth(文本);
textwidth(文本); //获取文字宽度,如 textwidth("哈哈哈哈");
4. 获取文本的高度 textheight(文本);
textheight(文本); //获取文本高度,如 textheight("嘿嘿");
3、图像处理函数
1.图像类型变量 IMAGE
在使用图像之前,需要先定义一个变量(对象),然后把图片加载进变量能使用。
定义一个图像变量,如 IMAGE img;
2.加载图像 loadimage(&img, 文件路径,宽, 高,是否调整 IMAGE大小来适应图片);
loadimage(IMAGE *pDstImg,文件路径, 宽,高, bool bResize = false);
相对路径: ./ 表示当前文件夹下 ../ 表示上一级文件夹 如:./123.jpg
绝对路径:C:\\Users\\ASUS\\Desktop\\eaxyX项目\\eaxyX\\eaxyX\\123.jpg
如,loadimage(&img,"./123.jpg");
3.在设备上绘制图片 putimage(X,Y,&img)
putimage(X,Y,&img,三元光栅操作码)
//把(x,y)作为左上角顶点放置图片,最后一个参数一般用不到
4、鼠标消息函数
1. 鼠标消息判断 MouseHit()
用MouseHit()来判断是否有鼠标消息(左键,右键,中间,移动)
2.鼠标消息MOUSEMSG类型及其成员
如 MOUSEMSG msg;
鼠标消息(msg)的成员
uMsg, //当前鼠标消息
x, //当前鼠标x坐标
y, //当前鼠标y坐标
使用鼠标消息的成员 如,msg.uMsg,msg.x,msg.y
uMsg是用来判断鼠标消息的类型
主要的两个消息 WM_LBUTTONDOWN 鼠标左击消息
WM_RBUTTONDOWN 鼠标右击消息
3.鼠标消息接收 msg = GetMouseMsg();
如果有鼠标消息,就可以进行接收鼠标消息了 msg = GetMouseMsg();