easy.h最基础的一些函数用法

这篇博客介绍了C++中使用图形库进行图形化界面编程的基础知识,包括创建和关闭窗口、设置窗口背景色、绘图函数(如circle、fillcircle、solidcircle)、文字显示、图片贴入及鼠标键盘事件的处理。通过实例代码展示了如何实现这些功能,适合初学者入门。
摘要由CSDN通过智能技术生成

欢迎各位来到博主第一次写的博客,本博客主要通过在b站上的学习对于c++中的图形化界面进行基础的学习和对函数进行基本的归纳,如有不足还希望各位指正。

一.首先我们来看最简单的创建和关闭

#include<stdio.h>

#include<graphics.h>//包含图像库头文件,仅仅适用于C++

int main()

{

 1.创建一个窗口,initgraph();右图是关于对该函数的详细说明

 initgraph(900, 900,NOMINIMIZE);

 getchar();

在这里必须存在getchar()否则会马上执行下一句的关闭窗口,closegraph();

 closegraph();

 return 0;

}*/

#include<conio.h>

#include<iostream>

#include<easyx.h>

#include<graphics.h>//包含图像库头文件,仅仅适用于C++

int main()

{

initgraph(500,500,EW_SHOWCONSOLE);

二.学会更改窗口的底色

setbkcolor(WHITE);

cleardevice();

三,有关绘图函数

/*

绘图函数 circle无  fillcircle()有边框  solidcircle无边框  填充

*/

setlinestyle(PS_SOLID, 5);//

setfillcolor(YELLOW);//填充色

setlinecolor(BLUE);//填充线条颜色

circle(50,50,50);//圆的x,y,半径

fillcircle(50,150,50);//填满整个圆

solidcircle(50,250,50);//

四、文字问题

/*int maye=0;

printf("请输入数字\n");

scanf("%d",&maye);*/

1.设置文字样式,大小,字体

settextstyle(20,0,"楷体");

2.设置背景模式 transparent 透明

setbkmode(TRANSPARENT);

3.设置字体颜色(默认白)

settextcolor(RGB(0,0,13));

4.在坐标x,y处写一个文本

outtextxy(50,50,TEXT("我是你爹"));

5.把文字居中

fillrectangle(200,50,500,100);//上下左右

settextcolor(RGB(179,0,173));

char arr[]="我是居中显示" ;

int width=300/2-textwidth(arr)/2;//逻辑说明1

int height=50/2-textheight(arr)/2;//逻辑说明2

outtextxy(width+200,height+50,arr);

五、贴入一个图片

IMAGE img;//定义一个(变量)对象

加载图片

./表示当前文件夹 ../当前文件夹的上一级

loadimage(&img,"./开始界面.jpg",500,500);//大小

//这个大小尽量和init中的相同

putimage(0,0,&img);

 

六、有关鼠标

while(1)

{

if(MouseHit())

 {

  cleardevice();

 

MOUSEMSG msg=GetMouseMsg();声明变量并且返回保存有鼠标消息的结构体

 

  //消息分发

 switch(msg.uMsg)

 {

  case WM_LBUTTONDOWN:

  outtextxy(400,400,"鼠标左键");//在400 400显示鼠标左键这句话

  printf("坐标:(%d,%d)\n",msg.x,msg.y) ;

  break;

case  WM_RBUTTONDOWN:

outtextxy(400,400,"鼠标右键");

printf("坐标:(%d,%d)\n",msg.x,msg.y) ;

break;

 }

 }

}

getchar(); //这样才不会马上关闭窗口

closegraph();

return 0;

}

7.有关键盘

    int x=0,y=0;
    while(1)
    {
        setfillcolor(BROWN);
        fillcircle(x,y,20);
        char key=getch();
//        if里面条件 
//        可限制范围 
        switch(key)
        {
            case 72://
            case 'w':
            case 'W':
            y-=5;
            break;
            case 80:
            case 's':
            case 'S':
            y+=5;
            break;
            case 75:
            case 'a':
            case 'A':
            x-=5;
            break;
            case 77:
            case 'd':
            case 'D':
            x+=5;
            break;    
         } 
    }
    getchar(); //这样才不会马上关闭窗口 
    closegraph();
    return 0;
}
 

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值