完整代码下载地址:http://www.51hei.com/f/29782212PDA.rar <br>
#include <stm32f10x_lib.h>
#include "ui.h"
#include "ILI9320.h"
#include "string.h"//文本框用
//按钮模型
//x1y1左上角,x2y2右下角,确定方框范围
//lon文本长度
//size文本大小
//p文本
//mode为按钮状态
void Button(u16 x1,u16 y1,u16 x2,u16 y2,u8 mode,u8 *p,u16 lon,u8 size)
{
u16 dx=(x2-x1-lon+2)/2;
u16 dy=(y2-y1-size+2)/2;
switch(mode)
{
case 0:
{
clear(x1,y1,x2,y2,color(0xd4,0xd0,0xc8));
_line_((x1+1),(y1+1),(x2-1),(y1+1),color(255,255,255));
_line_((x1+1),(y1+1),(x1+1),(y2-1),color(255,255,255));
_line_(x1,y2,x2,y2,color(0x40,0x40,0x40));
_line_(x2,y1,x2,y2,color(0x40,0x40,0x40));
_line_((x1+1),(y2-1),(x2-1),(y2-1),color(0x80,0x80,0x80));
_line_((x2-1),(y1+1),(x2-1),(y2-1),color(0x80,0x80,0x80));
if(p!=NULL)show_string((x1+dx),(y1+dy),lon,p,size,color(0,0,0));
}break;
case 1:
{
clear((x1+1),(y1+1),(x2-1),(y2-1),color(0xd4,0xd0,0xc8));
_line_((x1+1),(y1+1),(x2-1),(y1+1),color(0x80,0x80,0x80));
_line_((x1+1),(y1+1),(x1+1),(y2-1),color(0x80,0x80,0x80));
_line_(x1,y1,x2,y1,color(0x40,0x40,0x40));
_line_(x1,y1,x1,y2,color(0x40,0x40,0x40));
_line_(x2,y1,x2,y2,color(255,255,255));
_line_(x1,y2,x2,y2,color(255,255,255));
if(p!=NULL)show_string((x1+dx+1),(y1+dy+1),lon,p,size,color(0,0,0));
}break;
case 2:
{
clear(x1,y1,x2,y2,color(0xd4,0xd0,0xc8));
_line_(x1,y1,x2,y1,color(255,255,255));
_line_(x1,y1,x1,(y2-1),color(255,255,255));
_line_(x1,y2,x2,y2,color(0x40,0x40,0x40));
_line_(x2,y1,x2,y2,color(0x40,0x40,0x40));
_line_((x1+1),(y2-1),(x2-1),(y2-1),color(0x80,0x80,0x80));
_line_((x2-1),(y1+1),(x2-1),(y2-1),color(0x80,0x80,0x80));
if(p!=NULL)
{
show_string((x1+dx+1),(y1+dy+1),lon,p,size,color(255,255,255));
show_string((x1+dx),(y1+dy),lon,p,size,color(0x80,0x80,0x80));
}
}break;
}
}
//上按键模型
//横宽最小9像素,竖宽最小7像素
void Button_Up(u16 x1,u16 y1,u16 x2,u16 y2,u8 mode)
{
u16 lon_y,lon_x;
lon_x=((x2-x1)-5)/2;
lon_y=((y2-y1)-3)/2;
Button(x1,y1,x2,y2,mode,NULL,0,0);
if(mode==UNPRESS)
{
dot(x1+lon_x+1,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+2,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+2,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+1,color(0,0,0));
}
else if(mode==PRESS)
{
dot(x1+lon_x+2,y1+lon_y+4,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+4,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+4,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+4,color(0,0,0));
dot(x1+lon_x+6,y1+lon_y+4,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+2,color(0,0,0));
}
else if(mode==INVALID)
{
dot(x1+lon_x+2,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+3,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+5,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+6,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+3,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+5,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+1,y1+lon_y+3,color(0x80,0x80,0x80));
dot(x1+lon_x+2,y1+lon_y+3,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+3,color(0x80,0x80,0x80));
dot(x1+lon_x+4,y1+lon_y+3,color(0x80,0x80,0x80));
dot(x1+lon_x+5,y1+lon_y+3,color(0x80,0x80,0x80));
dot(x1+lon_x+2,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+4,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+1,color(0x80,0x80,0x80));
}
}
//下按键按钮
void Button_Down(u16 x1,u16 y1,u16 x2,u16 y2,u8 mode)
{
u16 lon_y,lon_x;
lon_x=((x2-x1)-5)/2;
lon_y=((y2-y1)-3)/2;
Button(x1,y1,x2,y2,mode,NULL,0,0);
if(mode==UNPRESS)
{
dot(x1+lon_x+1,y1+lon_y+1,color(0,0,0));
dot(x1+lon_x+2,y1+lon_y+1,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+1,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+1,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+1,color(0,0,0));
dot(x1+lon_x+2,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+3,color(0,0,0));
}
else if(mode==PRESS)
{
dot(x1+lon_x+2,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+6,y1+lon_y+2,color(0,0,0));
dot(x1+lon_x+3,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+5,y1+lon_y+3,color(0,0,0));
dot(x1+lon_x+4,y1+lon_y+4,color(0,0,0));
}
else if(mode==INVALID)
{
dot(x1+lon_x+2,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+3,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+5,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+6,y1+lon_y+2,color(255,255,255));
dot(x1+lon_x+3,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+5,y1+lon_y+3,color(255,255,255));
dot(x1+lon_x+4,y1+lon_y+4,color(255,255,255));
dot(x1+lon_x+1,y1+lon_y+1,color(0x80,0x80,0x80));
dot(x1+lon_x+2,y1+lon_y+1,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+1,color(0x80,0x80,0x80));
dot(x1+lon_x+4,y1+lon_y+1,color(0x80,0x80,0x80));
dot(x1+lon_x+5,y1+lon_y+1,color(0x80,0x80,0x80));
dot(x1+lon_x+2,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+4,y1+lon_y+2,color(0x80,0x80,0x80));
dot(x1+lon_x+3,y1+lon_y+3,color(0x80,0x80,0x80));
}
}
//窗口函数
//标题高18
void Windows(u16 x1,u16 y1,u16 x2,u16 y2,u8 *title,u8 size)
{
//0a246a
//a6caf0
u16 dx=x2-x1-4;//标题栏长度缓存
float a=0x0a,b=0x24,c=0x6a;
u16 i,j;
clear(x1,y1,x2,y2,color(0xd4,0xd0,0xc8));
//窗口边界
_line_((x1+1),(y1+1),(x2-1),(y1+1),color(255,255,255));
_line_((x1+1),(y1+1),(x1+1),(y2-1),color(255,255,255));
_line_((x1+1),(y2-1),(x2-1),(y2-1),color(0x80,0x80,0x80));
_line_((x2-1),(y1+1),(x2-1),(y2-1),color(0x80,0x80,0x80));
_line_(x1,y2,x2,y2,color(0x40,0x40,0x40));
_line_(x2,y1,x2,y2,color(0x40,0x40,0x40));
for(j=0;j<dx;j++)//标题栏,高度为字体高度+4
{
for(i=0;i<(4+size);i++)dot((x1+2+j),(y1+2+i),color(a,b,c));
a+=(float)(0xa6-0x0a)/dx;
b+=(float)(0xca-0x24)/dx;
c+=(float)(0xf0-0x6a)/dx;
}
show_string((x1+4),(y1+4),dx,title,size,color(255,255,255));//标题栏文字
}
//窗体中的填充框
//x1,y1左上角
//x2y2右上角
//sta为0,不显示光标,1显示全选光标,2显示普通光标
void Hole(u16 x1,u16 y1,u16 x2,u16 y2)
{
clear(x1,y1,x2,y2,color(255,255,255));
_line_(x1,y1,x2,y1,color(0x40,0x40,0x40));
_line_(x1,y1,x1,y2,color(0x40,0x40,0x40));
_line_((x1+1),(y1+1),(x2-1),(y1+1),color(0x80,0x80,0x80));
_line_((x1+1),(y1+1),(x1+1),(y2-1),color(0x80,0x80,0x80));
_line_((x2-1),(y1+1),(x2-1),(y2-1),color(0xd4,0xd0,0xc8));
_line_((x1+1),(y2-1),(x2-1),(y2-1),color(0xd4,0xd0,0xc8));
_line_(x2,y1,x2,y2,color(255,255,255));
_line_(x1,y2,x2,y2,color(255,255,255));
}
//进度条
//x1y1左上角
//lon进度条长度
//index当前数值
//total总数值
//font为是否显示数字(1显示)
//固定高度14像素
void Progress_Bar(u16 x1,u16 y1,u16 lon,u32 index,u32 total,u8 font)
{
u16 i;
u8 j;
float percent=(((float)index/total));//得到加载百分数百分数
u16 temp;
if(percent>1)percent=1;
temp=lon*percent;//得到当前进度条加载数量
_line_(x1,y1,(x1+lon),y1,color(0,0,0));
_line_(x1,(y1+14),(x1+lon),(y1+14),color(0,0,0));
_line_(x1,y1,x1,(y1+14),color(0,0,0));
_line_((x1+lon),y1,(x1+lon),(y1+14),color(0,0,0));
for(i=0;i<temp;i++)//加载蓝色部分
{
for(j=0;j<13;j++)dot((x1+1+i),(y1+1+j),color(0,0,255));
}
for(i=0;i<(lon-temp-1);i++)//加载白色部分
{
for(j=0;j<13;j++)dot((x1+1+i+temp),(y1+1+j),color(255,255,255));
}
if(font)
{
if(temp<=(x1+((lon-18)/2)+18))
{
if((percent*100)<10)
{
show_nums((x1+((lon-12)/2)),(y1+2),((u8)(percent*100)),1,12,color(0,0,0),0);
show_string((x1+((lon-12)/2)+6),(y1+2),13,"%",12,color(0,0,0));
}
else if(((percent*100)>9)&&((percent*100)<100))
{
show_nums((x1+((lon-18)/2)),(y1+2),((u8)(percent*100)),2,12,color(0,0,0),0);
show_string((x1+((lon-18)/2)+12),(y1+2),13,"%",12,color(0,0,0));
}
else if(percent==1)
{
show_nums((x1+((lon-24)/2)),(y1+2),((u8)(percent*100)),3,12,color(0,0,0),0);
show_string((x1+((lon-24)/2)+18),(y1+2),13,"%",12,color(0,0,0));
}
//变更字体颜色
for(i=0;i<(temp-((lon-18)/2));i++)
{
for(j=0;j<13;j++)
{
if(rdot((x1+i+(lon-18)/2),(y1+1+j))==0)dot((x1+i+(lon-18)/2),(y1+1+j),color(255,255,255));
}
}
}
else
{
if((percent*100)<10)
{
show_nums((x1+((lon-12)/2)),(y1+2),((u8)(percent*100)),1,12,color(255,255,255),0);
show_string((x1+((lon-12)/2)+6),(y1+2),13,"%",12,color(255,255,255));
}
else if(((percent*100)>9)&&((percent*100)<100))
{
show_nums((x1+((lon-18)/2)),(y1+2),((u8)(percent*100)),2,12,color(255,255,255),0);
show_string((x1+((lon-18)/2)+12),(y1+2),13,"%",12,color(255,255,255));
}
else if(percent==1)
{
show_nums((x1+((lon-24)/2)),(y1+2),((u8)(percent*100)),3,12,color(255,255,255),0);
show_string((x1+((lon-24)/2)+18),(y1+2),13,"%",12,color(255,255,255));
}
}
}
}
//滚动条
//滚动条宽度默认10
//x1,y1为起始坐标,lon为滚动条长度,必须大于20
//button_up为上按钮模式,button_down为下按钮模式,page为每页项目数,total为总项目数
//addr为当前位置
void Rolling_Bar(u16 x1,u16 y1,u16 lon,u8 button_up,u8 button_down,u32 addr,u32 page,u32 total)
{
u32 l=((float)(lon-24)/total)*page;//得到滚动条长度
u32 offset=((float)(lon-24-l)/(total-page))*addr;//获得每翻动一个项目所偏移的像素
Button_Up(x1,y1,(x1+12),(y1+12),button_up);//上按钮
Button_Down(x1,(y1+lon-12),(x1+12),(y1+lon),button_down);//下按钮
clear(x1,(y1+12),(x1+12),(y1+lon-12),color(0x7d,0x8b,0x9a));
Button(x1,(y1+12+offset),(x1+12),(y1+12+offset+l),UNPRESS,NULL,0,0);
}
//显示方框特效
//显示一个图标选中方框
//边框宽2像素
void dis_kuang(u16 x1,u16 y1,u16 x2,u16 y2,u16 color)
{
// _line_(x,y,(x+59),y,color);
// _line_(x,(y+1),(x+59),(y+1),color);
// _line_(x,y,x,(y+61),color);
// _line_((x+1),y,(x+1),(y+61),color);
// _line_((x+58),y,(x+58),(y+61),color);
// _line_((x+59),y,(x+59),(y+61),color);
// _line_(x,(y+61),(x+59),(y+61),color);
// _line_(x,(y+62),(x+59),(y+62),color);
//顶边
_line_(x1,y1,x2,y1,color);
_line_(x1,(y1+1),x2,(y1+1),color);
//左边
_line_(x1,y1,x1,y2,color);
_line_((x1+1),y1,(x1+1),y2,color);
//右边
_line_((x2-1),y1,(x2-1),y2,color);
_line_(x2,y1,x2,y2,color);
//下边
_line_(x1,y2,x2,y2,color);
_line_(x1,(y2+1),x2,(y2+1),color);
}
//播放器按钮与图标
//固定为24×24
//播放按钮
void Button_Play(u16 x,u16 y,u8 mode)
{
Button(x,y,(x+24),(y+24),mode,NULL,0,0);
if(mode==UNPRESS)
{
_line_((x+6),(y+6),(x+6),(y+6+12),color(0,0,0));//12
_line_((x+7),(y+7),(x+7),(y+7+10),color(0,0,0));//10
_line_((x+8),(y+8),(x+8),(y+8+8),color(0,0,0));//8
_line_((x+9),(y+9),(x+9),(y+9+6),color(0,0,0));//6
_line_((x+10),(y+10),(x+10),(y+10+4),color(0,0,0));//4
_line_((x+11),(y+11),(x+11),(y+11+2),color(0,0,0));//2
_line_((x+12),(y+6),(x+12),(y+6+12),color(0,0,0));//12
_line_((x+13),(y+6),(x+13),(y+6+12),color(0,0,0));//12
_line_((x+16),(y+6),(x+16),(y+6+12),color(0,0,0));//12
_line_((x+17),(y+6),(x+17),(y+6+12),color(0,0,0));//12
}
else if(mode==PRESS)
{
_line_((x+7),(y+7),(x+7),(y+7+12),color(0,0,0));//12
_line_((x+8),(y+8),(x+8),(y+8+10),color(0,0,0));//10
_line_((x+9),(y+9),(x+9),(y+9+8),color(0,0,0));//8
_line_((x+10),(y+10),(x+10),(y+10+6),color(0,0,0));//6
_line_((x+11),(y+11),(x+11),(y+11+4),color(0,0,0));//4
_line_((x+12),(y+12),(x+12),(y+12+2),color(0,0,0));//2
_line_((x+13),(y+7),(x+13),(y+6+13),color(0,0,0));//12
_line_((x+14),(y+7),(x+14),(y+6+13),color(0,0,0));//12
_line_((x+17),(y+7),(x+17),(y+6+13),color(0,0,0));//12
_line_((x+18),(y+7),(x+18),(y+6+13),color(0,0,0));//12
}
//可能不存在按钮不可用状态
/* else if(mode==INVALID)
{
//阴影
_line_((x+7),(y+7),(x+7),(y+7+12),color(255,255,255));//12
_line_((x+8),(y+8),(x+8),(y+8+10),color(255,255,255));//10
_line_((x+9),(y+9),(x+9),(y+9+8),color(255,255,255));//8
_line_((x+10),(y+10),(x+10),(y+10+6),color(255,255,255));//6
_line_((x+11),(y+11),(x+11),(y+11+4),color(255,255,255));//4
_line_((x+12),(y+12),(x+12),(y+12+2),color(255,255,255));//2
_line_((x+13),(y+7),(x+13),(y+6+13),color(255,255,255));//12
_line_((x+14),(y+7),(x+14),(y+6+13),color(255,255,255));//12
_line_((x+17),(y+7),(x+17),(y+6+13),color(255,255,255));//12
_line_((x+18),(y+7),(x+18),(y+6+13),color(255,255,255));//12
//正常
_line_((x+6),(y+6),(x+6),(y+6+12),color(0x80,0x80,0x80));//12
_line_((x+7),(y+7),(x+7),(y+7+10),color(0x80,0x80,0x80));//10
_line_((x+8),(y+8),(x+8),(y+8+8),color(0x80,0x80,0x80));//8
_line_((x+9),(y+9),(x+9),(y+9+6),color(0x80,0x80,0x80));//6
_line_((x+10),(y+10),(x+10),(y+10+4),color(0x80,0x80,0x80));//4
_line_((x+11),(y+11),(x+11),(y+11+2),color(0x80,0x80,0x80));//2
_line_((x+12),(y+6),(x+12),(y+6+12),color(0x80,0x80,0x80));//12
_line_((x+13),(y+6),(x+13),(y+6+12),color(0x80,0x80,0x80));//12
_line_((x+16),(y+6),(x+16),(y+6+12),color(0x80,0x80,0x80));//12
_line_((x+17),(y+6),(x+17),(y+6+12),color(0x80,0x80,0x80));//12
}*/
}
//停止按钮
//固定高度24
void Button_Stop(u16 x,u16 y,u8 mode)
{
Button(x,y,(x+24),(y+24),mode,"■",12,12);
}
//下一首
void Button_Next(u16 x,u16 y,u8 mode)
{
Button(x,y,(x+24),(y+24),mode,NULL,0,0);
if(mode==UNPRESS)
{
_line_((x+8),(y+6),(x+8),(y+6+12),color(0,0,0));//12
_line_((x+9),(y+7),(x+9),(y+7+10),color(0,0,0));//10
_line_((x+10),(y+8),(x+10),(y+8+8),color(0,0,0));//8
_line_((x+11),(y+9),(x+11),(y+9+6),color(0,0,0));//6
_line_((x+12),(y+10),(x+12),(y+10+4),color(0,0,0));//4
_line_((x+13),(y+11),(x+13),(y+11+2),color(0,0,0));//2
_line_((x+14),(y+6),(x+14),(y+6+12),color(0,0,0));//12
_line_((x+15),(y+6),(x+15),(y+6+12),color(0,0,0));//12
}
else if(mode==PRESS)
{
_line_((x+9),(y+7),(x+9),(y+7+12),color(0,0,0));//12
_line_((x+10),(y+8),(x+10),(y+8+10),color(0,0,0));//10
_line_((x+11),(y+9),(x+11),(y+9+8),color(0,0,0));//8
_line_((x+12),(y+10),(x+12),(y+10+6),color(0,0,0));//6
_line_((x+13),(y+11),(x+13),(y+11+4),color(0,0,0));//4
_line_((x+14),(y+12),(x+14),(y+12+2),color(0,0,0));//2
_line_((x+15),(y+7),(x+15),(y+6+13),color(0,0,0));//12
_line_((x+16),(y+7),(x+16),(y+6+13),color(0,0,0));//12
}
}
//上一首
void Button_Pre(u16 x,u16 y,u8 mode)
{
Button(x,y,(x+24),(y+24),mode,NULL,0,0);
if(mode==UNPRESS)
{
_line_((x+15),(y+6),(x+15),(y+6+12),color(0,0,0));//12
_line_((x+14),(y+7),(x+14),(y+7+10),color(0,0,0));//10
_line_((x+13),(y+8),(x+13),(y+8+8),color(0,0,0));//8
_line_((x+12),(y+9),(x+12),(y+9+6),color(0,0,0));//6
_line_((x+11),(y+10),(x+11),(y+10+4),color(0,0,0));//4
_line_((x+10),(y+11),(x+10),(y+11+2),color(0,0,0));//2
_line_((x+9),(y+6),(x+9),(y+6+12),color(0,0,0));//12
_line_((x+8),(y+6),(x+8),(y+6+12),color(0,0,0));//12
}
else if(mode==PRESS)
{
_line_((x+16),(y+7),(x+16),(y+7+12),color(0,0,0));//12
_line_((x+15),(y+8),(x+15),(y+8+10),color(0,0,0));//10
_line_((x+14),(y+9),(x+14),(y+9+8),color(0,0,0));//8
_line_((x+13),(y+10),(x+13),(y+10+6),color(0,0,0));//6
_line_((x+12),(y+11),(x+12),(y+11+4),color(0,0,0));//4
_line_((x+11),(y+12),(x+11),(y+12+2),color(0,0,0));//2
_line_((x+10),(y+7),(x+10),(y+6+13),color(0,0,0));//12
_line_((x+9),(y+7),(x+9),(y+6+13),color(0,0,0));//12
}
}
//画笔按钮
//type:画笔类型(目前共8种)
void Button_Draw(u16 x,u16 y,u8 mode,u8 type)
{
u8 x1,y1;
Button(x,y,(x+24),(y+24),mode,NULL,0,0);
switch(type)
{
case 0:
{
if(mode==UNPRESS)dot((x+12),(y+12),0);
if(mode==PRESS)dot((x+13),(y+13),0);
}break;
case 1:
{
if(mode==UNPRESS)clear((x+10),(y+10),(x+24-10),(y+24-10),0);
if(mode==PRESS)clear((x+11),(y+11),(x+24-10+1),(y+24-10+1),0);
}break;
case 2:
{
if(mode==UNPRESS)clear((x+8),(y+8),(x+24-8),(y+24-8),0);
if(mode==PRESS)clear((x+9),(y+9),(x+24-8+1),(y+24-8+1),0);
}break;
case 3:
{
if(mode==UNPRESS)clear((x+6),(y+6),(x+24-6),(y+24-6),0);
if(mode==PRESS)clear((x+7),(y+7),(x+24-6+1),(y+24-6+1),0);
}break;
case 4:
{
if(mode==UNPRESS)
{
for(y1=0;y1<12;y1+=5)
{
for(x1=0;x1<12;x1+=5)dot((x+6+x1),(y+6+y1),0);
}
}
if(mode==PRESS)
{
for(y1=0;y1<12;y1+=5)
{
for(x1=0;x1<12;x1+=5)dot((x+6+x1+1),(y+6+y1+1),0);
}
}
}break;
case 5:
{
if(mode==UNPRESS)
{
for(y1=0;y1<12;y1+=4)
{
for(x1=0;x1<12;x1+=4)dot((x+6+x1),(y+6+y1),0);
}
}
if(mode==PRESS)
{
for(y1=0;y1<12;y1+=4)
{
for(x1=0;x1<12;x1+=4)dot((x+6+x1+1),(y+6+y1+1),0);
}
}
}break;
case 6:
{
if(mode==UNPRESS)
{
for(y1=0;y1<12;y1+=3)
{
for(x1=0;x1<12;x1+=3)dot((x+6+x1),(y+6+y1),0);
}
}
if(mode==PRESS)
{
for(y1=0;y1<12;y1+=3)
{
for(x1=0;x1<12;x1+=3)dot((x+6+x1+1),(y+6+y1+1),0);
}
}
}break;
case 7:
{
if(mode==UNPRESS)
{
for(y1=0;y1<12;y1+=2)
{
for(x1=0;x1<12;x1+=2)dot((x+6+x1),(y+6+y1),0);
}
}
if(mode==PRESS)
{
for(y1=0;y1<12;y1+=2)
{
for(x1=0;x1<12;x1+=2)dot((x+6+x1+1),(y+6+y1+1),0);
}
}
}break;
}
}
|