C++图形时钟(画图入门篇)
第一次接触制作窗口画图感觉还不错,听老师讲过后写的,希望对大家有帮助。
本次工程是制作一个圆形和方形时钟,涉及画图操作,先介绍一下画图库(ACLLib)的用到的函数;
1.图形库的介绍(这里只介绍此工程用到的函数,想额外了解的可以百度此库的名称)
ACLLib是一个基于Win32API的函数库,提供了相对较为简单的方式来做Windows程序,同时也是一个C语言图形库
需要Setup是ACLLib程序的入口/启动函数 ,其意义等同于main函数 ;
一般框架为:
#include "acllib.h"
int Setup(){
initWindow("test",DEFAULT,DEFAULT,width,width);
return 0;
}
画图稍显需要构建一个窗口
函数原型为: void initWindow(const char title[] , int left , int top , int width , int height);
参数含义依次为:窗口标题,窗口左边起始坐标,上面起始坐标,窗口宽度,窗口高度。
如果在窗口上画图需要把画图部分放在*beninPaint()和endPaint()*之间,分别代表画图的开始和画图的结束。
另外需要注意的是在Windows中,坐标是以像素点的数字来定义的,左上角是(0,0),x轴自左向右增大,而y轴自上向下增大。
void setPenWidth(int width) ;//设置画笔的宽度,单位为像素点
void ellipse(int Leftx, int TopX ,int width,int height);//画椭圆(起点下,y;宽度高度)
void rectangle(int Leftx, int TopX ,int width,int height);//画矩形(起点下,y;宽度高度)
void moveTo(int x, int y); //把当前坐标移动到(x,y)
void lineTo(int x,int y); //从当前点画线到(x,y)
setPenColor(ACL_Color newColor); //设置画笔颜色
setBrushColor(ACL_Color newColor); //设置所画区域颜色
2. 获取系统时间
#include<stdio.h>
#include<time.h>
int main()
{
time_t timer = time(NULL);
printf("ctime is %s\n", ctime(&timer));//得到日历时间
return 0;
}
需要注意的是别忘记加头文件 “time.h”,time.h是C