EasyX
绘制简单的图形化窗口
代码示例:
while(1);
可以把程序卡死在while 不让程序往下执行 这样 就可以避免easyx界面只出现一秒就被关了
窗口坐标
窗口是有坐标的 横轴x 竖轴y 其中画图形的话 要放入关键的坐标点
设置窗口属性
给窗口设置颜色 调用函数setbkcolor(颜色单词大写)
可以先写入一个红色 之后右键调出定义页面 就可以看到所以的颜色单词定义
打开画图 编辑颜色 右下角就是所选颜色RGB 把三个数输入到函数的参数位置就可以
最后设置完属性要刷新才会显示
在设置完之后进行刷新
并且
要在“关闭”的那行代码之前进行刷新
实现基本绘图功能
对于线、矩形:一个函数 之后传入四个参数 两两一组 线是两个断点的坐标 矩形是对角线上两个点的坐标
填充圆或者矩形 先设置填充颜色 (各个图形可以共享)
之后设置填充 填充分为带线与不带线
补充:
颜色设置是一种状态 所以 在某处设置了颜色 该处往下都会执行该状态 所以 建议不同的形状填充之前 都要设置一遍颜色状态
示例:
案例:
这里可以设置线的颜色:setlinecolor
贴图
原样贴图
代码:
先定义一个IMAGE类型的变量
之后加载图片 loadimage(变量的地址(指针),路径(要修改项目属性),尺寸1,尺寸2)
之后显示图片putimage(位置x坐标,y坐标,变量地址);
补充:修改项目属性为多字集
透明贴图
认识素材
代码步骤
定义图片变量 加载图片 显示图片
注意第三步 不同的功能图 后面加的代码不一样
按键交互
阻塞按键
小球移动为例(按键控制移动)
非阻塞按键暂时不考虑
阻塞按键 就是指不进行操作时 坐标物品在原地不动
首先定义一个结构体 之后利用结构体变量来创建一个填充圆 可以当作之后要移动的物体
这里进行移动算法的编写
采用getch()接收字符 该函数的优点是输入的字符无需回车 就可以被接收进来
需要包含一个头文件
之后利用switch cse语句进行按键判断与操作
主函数里创建区域
之后一个死循环
{
刷新 保证每次输入后 旧位置的圆点消失 不然不会有移动的效果
画球 也就是设计一个函数 功能是 填充圆(1、设置填充颜色 2、设置带不带线的圆)
调用按键移动
}
之后关闭区域
鼠标交互
ExMessage 是一个API 实际上就是一个系统已经定义好了的类 直接创建他的对象就好了
peekmessage(这是一个全局函数–传入鼠标对象的地址)可以判断是否存在鼠标 也就是鼠标是否在点击当前程序
其中定义了一个message变量(相当于是成员变量,用来判断鼠标是左键还是右键) 是指鼠标的类型 用户做相应的鼠标操作 会返回一些值
包括 左键 WM_LBUTTONDOWN
右键 WM_RBUTTONDOWN
更多补充请跳转到:补充本