完整代碼下載地址:http://www.zg4o1577.cn/f/29782212PDA.rar <br>
#include <stm32f10x_lib.h>
#include "ui.h"
#include "ILI9320.h"
#include "string.h"http://文本框用
//按鈕模型
//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;
}
}
|