3kmenu34.c
来自「嵌入式开发 嵌入式开发 嵌入式开发」· C语言 代码 · 共 1,178 行 · 第 1/3 页
C
1,178 行
//开始历史误差描点
//纵向
xAT=hjCurvHeader[iCNL];
for(xoff=0; xoff<BOX34_W; xoff++)
{
PutPixel(arBOXPOS34[iCNL].x+xoff, arBOXPOS34[iCNL].y+h50per-vCurvErr[iCNL][xAT], 128, 255, 128);
if(++xAT==BOX34_W) { xAT=0;}
}
//横向
if(unit[iCNL].submenu1.bitfield.hcontrol)
{
xAT=hjCurvHeader[iCNL];
for(xoff=0; xoff<BOX34_W; xoff++)
{
PutPixel(arBOXPOS34[iCNL].x+xoff, arBOXPOS34[iCNL].y+h50per-hCurvErr[iCNL][xAT], 0, 255, 255);
if(++xAT==BOX34_W) { xAT=0;}
}
}
}
/******************************
描述: 误差综合显示屏幕 如果大于限制色机 则要取消线速度刷新
******************************/
void menu3(void)
{
int jcnl;
int wksYTZ_A,wksYTZ_B; //用来记录A系B系的预套准工作状况 0表示没有开始 1表示已经开始 2表示系里面没有通道
unsigned char counTime=0,counTime1=0;
ClearClientScr();
ShowLCaps_M3();
ShowTitle_M34();
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
if( unit[jcnl].submenu1.unitworksnum.i &&
unit[jcnl].submenu1.unitworksnum.j)
{
if( (jcnl==MAXCNL_3K-1) && (!unit[jcnl].submenu1.unitworksnum.i) )
{ break;}
DispARect_M3(jcnl, 1);
}
}
#ifdef ST3000_TMODE
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
if( unit[jcnl].submenu1.unitworksnum.i &&
unit[jcnl].submenu1.unitworksnum.j)
{
if(unit[jcnl].submenu1.bitfield.hcontrol)
{ DispHErr_M3(jcnl,
(jcnl%2?-1:1)*(jcnl>8?200:(unit[jcnl].submenu1.v_alarm-1)),
(jcnl%2?1:-1)*(jcnl>8?200:(unit[jcnl].submenu1.h_alarm-1)));
}
else
{ DispVErr_M3(jcnl,
(jcnl%2?-1:1)*(jcnl>8?200:(unit[jcnl].submenu1.v_alarm-1)));
}
}
}
#endif
//if(VarST3000.UnitCounts<MAXCNL_3K)
if(!unit[MAXCNL_3K-1].submenu1.unitworksnum.i)
{ InitBOX_SP34();}
//
ShowMouse();
while(VarST3000.MenuIDSEL==3 && VarST3000.AppAlive)
{
MouseKeyClick();
if(MouseClickFlag)
{
MouseClickFlag=0;
HideMouse();
if(ClickRow>=10 && ClickRow<=60)
{
if(ClickCol>=2 && ClickCol<=120)
{ menu8(); goto subexit_matrixmenu3;}
else if(ClickCol>=130 && ClickCol<=230)
{
if(wrkMsgBox(1)==1)
{ VarST3000.AppAlive=0; break;}
else
{ goto subexit_matrixmenu3;}
}
else if(ClickCol>=240 && ClickCol<=340 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕3
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=7;
}
}
else
{ VarST3000.MenuIDSEL=7;}
goto subexit_matrixmenu3;
}
else if(ClickCol>=350 && ClickCol<=450 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕2
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=6;
}
}
else
{ VarST3000.MenuIDSEL=6;}
goto subexit_matrixmenu3;
}
else if(ClickCol>=460 && ClickCol<=560 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕1
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=5;
}
}
else
{ VarST3000.MenuIDSEL=5;}
goto subexit_matrixmenu3;
}
else if(ClickCol>=570 && ClickCol<=670)
{ VarST3000.MenuIDSEL=4; goto subexit_matrixmenu3;}
#ifdef CAPTURE_SCR
else if(ClickCol>=680 && ClickCol<=780)
{ SaveScrRGB(3, 0);}
#endif
else if(ClickCol>=790 && ClickCol<=890)
{ VarST3000.MenuIDSEL=2; goto subexit_matrixmenu3;}
else if(ClickCol>=900 && ClickCol<=1000)
{ //___静止画面
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=1;
}
}
else
{ VarST3000.MenuIDSEL=1;}
goto subexit_matrixmenu3;
}
}
else
{ //click adjust button of each channel box.
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
if( unit[jcnl].submenu1.unitworksnum.i &&
unit[jcnl].submenu1.unitworksnum.j &&
(!CtrlUnitFlags[jcnl].bits.bit1))
{ //正常工作并且没有丢失
if( (ClickCol>=arBOXPOS34[jcnl].x+BOX34_W/2-25 && ClickCol<=arBOXPOS34[jcnl].x+BOX34_W/2+25) &&
(ClickRow>=arBOXPOS34[jcnl].y && ClickRow<=arBOXPOS34[jcnl].y+25) &&
(!CtrlUnitFlags[jcnl].bits.bit5) && (!GetFlags_ytz(jcnl)) )
{ RespBAdj_M3_U(jcnl); break;}
else if((ClickCol>=arBOXPOS34[jcnl].x+BOX34_W/2-25 && ClickCol<=arBOXPOS34[jcnl].x+BOX34_W/2+25) &&
(ClickRow>=arBOXPOS34[jcnl].y+BOX34_H-25 && ClickRow<=arBOXPOS34[jcnl].y+BOX34_H) &&
(!CtrlUnitFlags[jcnl].bits.bit4) && (!GetFlags_ytz(jcnl)) )
{ RespBAdj_M3_D(jcnl); break;}
else if((ClickCol>=arBOXPOS34[jcnl].x && ClickCol<=arBOXPOS34[jcnl].x+25) &&
(ClickRow>=arBOXPOS34[jcnl].y+BOX34_H/2-25 && ClickRow<=arBOXPOS34[jcnl].y+BOX34_H/2+25) &&
(unit[jcnl].submenu1.bitfield.hcontrol) &&
(!CtrlUnitFlags[jcnl].bits.bit2) && (!GetFlags_ytz(jcnl)) )
{ RespBAdj_M3_L(jcnl); break;}
else if((ClickCol>=arBOXPOS34[jcnl].x+BOX34_W-25 && ClickCol<=arBOXPOS34[jcnl].x+BOX34_W) &&
(ClickRow>=arBOXPOS34[jcnl].y+BOX34_H/2-25 && ClickRow<=arBOXPOS34[jcnl].y+BOX34_H/2+25) &&
(unit[jcnl].submenu1.bitfield.hcontrol) &&
(!CtrlUnitFlags[jcnl].bits.bit3) && (!GetFlags_ytz(jcnl)) )
{ RespBAdj_M3_R(jcnl); break;}
}
}
}
subexit_matrixmenu3:
ShowMouse();
}
#ifndef ST3000_TMODE
else
{
if(!unit[MAXCNL_3K-1].submenu1.unitworksnum.i)
{
if(GetSPEED())
{ DispSPEED34();}
}
if(++counTime==51)
{
ScanCAN_3000();
counTime=0;
}
if(++counTime1==91)
{
_Query_jzCmdList();
counTime1=0;
}
ConfirmREC_Tms();
}
#endif
}
if(REC_sub1com==1)//2007-4-26 16:22:27
{ REC_Sub1(jcnl, 4);}
else if(REC_sub1com==2)
{ REC_Sub1(jcnl,6);}
else if(REC_sub1com==3)
{ REC_Sub1(jcnl,3);}
else if(REC_sub1com==4)
{ REC_Sub1(jcnl,5);}
//___换屏存储
ConfirmREC_Scr();
}
/******************************
描述: 误差历史曲线显示屏幕 如果大于限制色机 则要取消线速度刷新
******************************/
void menu4(void)
{
int jcnl;
int wksYTZ_A,wksYTZ_B; //用来记录A系B系的预套准工作状况 0表示没有开始 1表示已经开始 2表示系里面没有通道
unsigned char counTime=0,counTime1=0;
ClearClientScr();
ShowLCaps_M4();
ShowTitle_M34();
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
if( (jcnl==MAXCNL_3K-1) && (!unit[jcnl].submenu1.unitworksnum.i) )
{ break;}
//
if( unit[jcnl].submenu1.unitworksnum.i &&
unit[jcnl].submenu1.unitworksnum.j)
{ DrawCurvBox_M4(jcnl);}
else
{
Bar(arBOXPOS34[jcnl].x, arBOXPOS34[jcnl].y,
arBOXPOS34[jcnl].x+BOX34_W, arBOXPOS34[jcnl].y+BOX34_H, 0, 0, 0);
}
}
#ifdef ST3000_TMODE
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
if( unit[jcnl].submenu1.unitworksnum.i &&
unit[jcnl].submenu1.unitworksnum.j)
{
SyncVEMark_M4(jcnl, 1);
SyncHEMark_M4(jcnl, 1);
SyncLMark_M34(jcnl, 1);
}
}
#endif
if(!unit[MAXCNL_3K-1].submenu1.unitworksnum.i)
{ InitBOX_SP34();}
//
ShowMouse();
while(VarST3000.MenuIDSEL==4 && VarST3000.AppAlive)
{
MouseKeyClick();
if(MouseClickFlag)
{
MouseClickFlag=0;
HideMouse();
if(ClickRow>=10 && ClickRow<=60)
{
if(ClickCol>=2 && ClickCol<=120)
{ menu8(); goto subexit_matrixmenu4;}
else if(ClickCol>=130 && ClickCol<=230)
{
if(wrkMsgBox(1)==1)
{ VarST3000.AppAlive=0; break;}
else
{ goto subexit_matrixmenu4;}
}
else if(ClickCol>=240 && ClickCol<=340 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕3
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=7;
}
}
else
{ VarST3000.MenuIDSEL=7;}
goto subexit_matrixmenu4;
}
else if(ClickCol>=350 && ClickCol<=450 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕2
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=6;
}
}
else
{ VarST3000.MenuIDSEL=6;}
goto subexit_matrixmenu4;
}
else if(ClickCol>=460 && ClickCol<=560 && VarST3000.CtrlMenuStatus)
{ //___参数屏幕1
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=5;
}
}
else
{ VarST3000.MenuIDSEL=5;}
goto subexit_matrixmenu4;
}
#ifdef CAPTURE_SCR
else if(ClickCol>=570 && ClickCol<=670)
{ SaveScrRGB(4, 0);}
#endif
else if(ClickCol>=680 && ClickCol<=780)
{ VarST3000.MenuIDSEL=3; goto subexit_matrixmenu4;}
else if(ClickCol>=790 && ClickCol<=890)
{ VarST3000.MenuIDSEL=2; goto subexit_matrixmenu4;}
else if(ClickCol>=900 && ClickCol<=1000)
{
wksYTZ_A=GetJOB_ytz(1); //查询A系的预套准
wksYTZ_B=GetJOB_ytz(2); //查询B系的预套准
if( (wksYTZ_A==1) ||
(wksYTZ_B==1) )
{
if( wrkMsgBox(0)==1 )
{ if(wksYTZ_A==1) { StopYtz(1, 0);}
if(wksYTZ_B==1) { StopYtz(2, 0);}
VarST3000.MenuIDSEL=1;
}
}
else
{ VarST3000.MenuIDSEL=1;}
goto subexit_matrixmenu4;
}
}
subexit_matrixmenu4:
ShowMouse();
}
#ifndef ST3000_TMODE
else
{
if(!unit[MAXCNL_3K-1].submenu1.unitworksnum.i)
{
if(GetSPEED())
{ DispSPEED34();}
}
if(++counTime==51)
{
ScanCAN_3000();
counTime=0;
}
if(++counTime1==91)
{
_Query_jzCmdList();
counTime1=0;
}
ConfirmREC_Tms();
}
#endif
}
//___换屏存储
ConfirmREC_Scr();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?