suoha_dspl.c
来自「是一个手机功能的模拟程序」· C语言 代码 · 共 770 行 · 第 1/2 页
C
770 行
{
case 0:
case 1:
case 2:
case 6:
return(char*)heitao;
break;
case 3:
return(char*)laoJ;
break;
case 4:
return(char*)laoQ;
break;
case 5:
return(char*)laoK;
break;
}
break;
}
//return p_dcard;
}
char* CardResGe(USHORT card)
{
USHORT shiwei, gewei;
gewei = FirstNum(card);
shiwei = SecondNum(card);
switch (shiwei)
{
case 1:
switch (gewei)
{
case 0:
return(char*)fangpian8_1;
break;
case 1:
return(char*)fangpian9_1;
break;
case 2:
return(char*)fangpian10_1;
break;
case 3:
return(char*)fangpianJ_1;
break;
case 4:
return(char*)fangpianQ_1;
break;
case 5:
return(char*)fangpianK_1;
break;
case 6:
return(char*)fangpianA_1;
break;
}
break;
case 2:
switch (gewei)
{
case 0:
return(char*)chaohua8_1;
break;
case 1:
return(char*)chaohua9_1;
break;
case 2:
return(char*)chaohua10_1;
break;
case 3:
return(char*)chaohuaJ_1;
break;
case 4:
return(char*)chaohuaQ_1;
break;
case 5:
return(char*)chaohuaK_1;
break;
case 6:
return(char*)chaohuaA_1;
break;
}
break;
case 3:
switch (gewei)
{
case 0:
return(char*)hongtao8_1;
break;
case 1:
return(char*)hongtao9_1;
break;
case 2:
return(char*)hongtao10_1;
break;
case 3:
return(char*)hongtaoJ_1;
break;
case 4:
return(char*)hongtaoQ_1;
break;
case 5:
return(char*)hongtaoK_1;
break;
case 6:
return(char*)hongtaoA_1;
break;
}
break;
case 4:
switch (gewei)
{
case 0:
return(char*)heitao8_1;
break;
case 1:
return(char*)heitao9_1;
break;
case 2:
return(char*)heitao10_1;
break;
case 3:
return(char*)heitaoJ_1;
break;
case 4:
return(char*)heitaoQ_1;
break;
case 5:
return(char*)heitaoK_1;
break;
case 6:
return(char*)heitaoA_1;
break;
}
break;
}
//return p_dcard;
}
/*************************************************************************
*************************************************************************/
//4显示mainwindow下的按钮和屏幕上的文本
void DisplayZone(UBYTE numzone, char* txt, UBYTE attr)
{
MfwRect rect;
TRACE_FUNCTION("DisplayZone()");
switch (numzone)
{
case 1:
//4mainwindow下的第一行文本
dspl_TextOut(LEFT_ZONE1+2, TOP_ZONE1+1, attr, (char *) txt);
break;
case 2:
//4mainwindow下的第二行文本
dspl_TextOut(LEFT_ZONE2+2, TOP_ZONE2, attr, (char *) txt);
break;
case 3: //4显示查看按钮
rect.px = LEFT_ZONE3; rect.py = TOP_ZONE3; rect.sx = RIGHT_ZONE3-LEFT_ZONE3; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
DrawButton(rect.px, rect.py, FALSE);
dspl_BitBlt(rect.px+10, rect.py+2, 13, 11, 0, (void *)checkstake, DSPL_BMPCOPY);
break;
case 4: //4显示下注的第一个按钮
rect.px = LEFT_ZONE4; rect.py = TOP_ZONE4; rect.sx = RIGHT_ZONE4-LEFT_ZONE4; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
if (attr==DSPL_TXTATTR_UNICODE) //display bmp
{
DrawButton(rect.px, rect.py, FALSE);
dspl_BitBlt(rect.px+11, rect.py+2, 11, 11, 0, (void *)putstake, DSPL_BMPCOPY);
} else
{
DrawButton(rect.px, rect.py, FALSE);
dspl_TextOut(LEFT_ZONE4-1,TOP_ZONE4, attr, (char *) txt);
}
break;
case 5: //4显示下注的第二个按钮
rect.px = LEFT_ZONE5; rect.py = TOP_ZONE5; rect.sx = RIGHT_ZONE5-LEFT_ZONE5; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
if (attr==DSPL_TXTATTR_UNICODE) //display bmp
{
DrawButton(rect.px, rect.py, FALSE);
dspl_BitBlt(rect.px+12, rect.py+5, 9, 6, 0, (void *)follow, DSPL_BMPCOPY);
} else
{
DrawButton(rect.px, rect.py, FALSE);
dspl_TextOut(LEFT_ZONE5-1, TOP_ZONE5, attr, (char *) txt);
}
break;
case 6: //4显示下注的第三个按钮
rect.px = LEFT_ZONE6; rect.py = TOP_ZONE6; rect.sx = RIGHT_ZONE6-LEFT_ZONE6; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
if (attr==DSPL_TXTATTR_UNICODE) //display bmp
{
DrawButton(rect.px, rect.py, FALSE);
dspl_BitBlt(rect.px+10, rect.py+2, 14, 13, 0, (void *)quitall, DSPL_BMPCOPY);
} else
{
DrawButton(rect.px, rect.py, FALSE);
dspl_TextOut(LEFT_ZONE6-1, TOP_ZONE6, attr, (char *) txt);
}
break;
case 7: //4显示全索的按钮
rect.px = LEFT_ZONE7; rect.py = TOP_ZONE7; rect.sx = RIGHT_ZONE7-LEFT_ZONE7; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
DrawButton(rect.px, rect.py, FALSE);
dspl_BitBlt(rect.px+11, rect.py+1, 10, 15, 0, (void *)allstake, DSPL_BMPCOPY);
break;
default:
break;
}
}
void ClearZone(UBYTE numzone)
{
MfwRect rect;
switch (numzone)
{
case 1:
rect.px = LEFT_ZONE1;rect.py = TOP_ZONE1; rect.sx = RIGHT_ZONE1-LEFT_ZONE1; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
break;
case 2:
rect.px = LEFT_ZONE2; rect.py = TOP_ZONE2; rect.sx = RIGHT_ZONE2-LEFT_ZONE2; rect.sy = HEIGHT_ZONE;
PaintBackground(rect, BKCOLOR);
break;
case 3:
dspl_Clear(LEFT_ZONE3, TOP_ZONE3, RIGHT_ZONE3, TOP_ZONE3+HEIGHT_ZONE);
//set backgroud color
break;
case 4:
dspl_Clear(LEFT_ZONE4, TOP_ZONE4, RIGHT_ZONE4, TOP_ZONE4+HEIGHT_ZONE);
//set backgroud color
break;
case 5:
dspl_Clear(LEFT_ZONE5, TOP_ZONE5, RIGHT_ZONE5, TOP_ZONE5+HEIGHT_ZONE);
//set backgroud color
break;
case 6:
dspl_Clear(LEFT_ZONE6, TOP_ZONE6, RIGHT_ZONE6, TOP_ZONE6+HEIGHT_ZONE);
//set backgroud color
break;
case 7:
dspl_Clear(LEFT_ZONE7, TOP_ZONE7, RIGHT_ZONE7, TOP_ZONE7+HEIGHT_ZONE);
//set backgroud color
break;
default:
break;
}
}
//4 设置文本区的背景色和边框
void DisplayMainWinTxtZone()
{
U32 oldcolor;
MfwRect rect;
oldcolor = dspl_SetFrgColor(0x000000);
dspl_DrawRect(LEFT_MAINWINTXT, TOP_MAINWINTXT, RIGHT_MAINWINTXT, BOTTOM_MAINWINTXT);
dspl_SetFrgColor(oldcolor);
rect.px=LEFT_MAINWINTXT+1; rect.py = TOP_MAINWINTXT+1; rect.sx = RIGHT_MAINWINTXT-rect.px; rect.sy = BOTTOM_MAINWINTXT-rect.py;
PaintBackground(rect, 0xffff80);
}
//4 针对不同的参数i确定刷新的按钮
void DrawSelectedButton(USHORT i)
{
UBYTE uMode;
uMode = dspl_Enable(0);
switch (i)
{
case 1: //4 查看
DrawButton(LEFT_ZONE3, TOP_ZONE3, 1);
break;
case 2: //4 下注
DrawButton(LEFT_ZONE4, TOP_ZONE4, 1);
break;
case 3: //4 跟进
DrawButton(LEFT_ZONE5, TOP_ZONE5, 1);
break;
case 4: //4 放弃
DrawButton(LEFT_ZONE6, TOP_ZONE6, 1);
break;
case 5: //4 全梭
DrawButton(LEFT_ZONE7, TOP_ZONE7, 1);
break;
default:
break;
}
//4 使按钮显示在按下的状态,这个方法不是很好
mfwSleep(100);
dspl_Enable(uMode);
}
//zhangzg 08/13/2002
void DisplayDialog(BOOL yesorno)
{
U32 oldcolor;
MfwRect rect;
//title area of dialog
oldcolor = dspl_SetFrgColor(0x000000);
dspl_DrawRect(LEFT_DIALOG, TOP_DIALOG, LEFT_DIALOG+100, TOP_DIALOG+10);
dspl_SetFrgColor(oldcolor);
rect.px=LEFT_DIALOG; rect.py = TOP_DIALOG; rect.sx = 100; rect.sy = 10;
PaintBackground(rect, 0x004080); //display deep blue color
//main area of dialog
oldcolor = dspl_SetFrgColor(0x000000);
dspl_DrawRect(LEFT_DIALOG, TOP_DIALOG+10, LEFT_DIALOG+100, TOP_DIALOG+60);
dspl_SetFrgColor(oldcolor);
rect.px=LEFT_DIALOG; rect.py = TOP_DIALOG+10; rect.sx = 100; rect.sy = 50;
PaintBackground(rect, 0xc0c0c0); //display shallow grey color
//display button
DrawButton(LEFT_DIALOG+8, TOP_DIALOG+40, 0);
DrawButton(LEFT_DIALOG+60, TOP_DIALOG+40, 0);
dspl_TextOut(LEFT_DIALOG+8+5, TOP_DIALOG+40+1, DSPL_TXTATTR_NORMAL | DSPL_TXTATTR_TRANSPARENT, "Yes");
dspl_TextOut(LEFT_DIALOG+60+5, TOP_DIALOG+40+1, DSPL_TXTATTR_NORMAL | DSPL_TXTATTR_TRANSPARENT, "No");
if (yesorno)//display hand shape on Yes button
DrawHand(LEFT_DIALOG+8+8, TOP_DIALOG+40+2);
else
DrawHand(LEFT_DIALOG+60+8, TOP_DIALOG+40+2);
//display text
dspl_TextOut(LEFT_DIALOG+20, TOP_DIALOG+15, DSPL_TXTATTR_UNICODE | DSPL_TXTATTR_TRANSPARENT, (char *)issaved);
}
/********************************************************************************
********************************************************************************/
void DrawFigure(MfwRect focus_rect, ULONG color)
{
U32 oldcolor;
TRACE_FUNCTION("DrawaFigure()");
oldcolor = dspl_SetFrgColor(color);//red color
dspl_DrawRect(focus_rect.px, focus_rect.py, focus_rect.px+focus_rect.sx, focus_rect.py+focus_rect.sy);
dspl_SetFrgColor(oldcolor);
}
/********************************************************************************
*********************************************************************************/
void Suoha_Display_Start_Picture()
{
U32 oldcolor;
oldcolor = dspl_SetBkgColor(0xffffff);
dspl_BitBlt(48, 65, 24, 30, 0, (void *)suoha_startpic1, DSPL_BMPCOPY);
}
void Suoha_Display_Opponent()
{
USHORT i, j; UBYTE uMode;
MfwRect rect = {0,0,120,160};
uMode = dspl_Enable(0);
PaintBackground(rect, 0x80ffff);
dspl_BitBlt(LEFT_WIDTH_PPMM, TOP_PPMM, WIDTH_PPMM, HEIGHT_PPMM, 0, (void *)(opparray[0]), DSPL_BMPCOPY);
dspl_BitBlt(LEFT_WIDTH_PPMM, TOP_PPMM+INTERVAL_PPMM+HEIGHT_PPMM, WIDTH_PPMM, HEIGHT_PPMM, 0, (void *)(opparray[1]), DSPL_BMPCOPY);
dspl_BitBlt(LEFT_WIDTH_PPMM, TOP_PPMM+2*INTERVAL_PPMM+2*HEIGHT_PPMM, WIDTH_PPMM, HEIGHT_PPMM, 0, (void *)(opparray[2]), DSPL_BMPCOPY);
dspl_BitBlt(LEFT_WIDTH_PPMM+8, TOP_PPMM+3*INTERVAL_PPMM+3*HEIGHT_PPMM, 15, 16, 0, (void *)helpicon, DSPL_BMPCOPY);
dspl_Enable(uMode);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?