📄 3kmenu6.c
字号:
Edit(xfrom, MenuAttr.sY+InstAttr.y_offset+t*(SizeAttrB.h+InstAttr.h_instance),
SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 15: // 横向不工作区
for(t=1; t<VarST3000.UnitCounts; t++)
{
eSTL=0x0f;
memset(szE, 0, 10);
sprintf(szE, "%6.2f", unit[t].submenu2.HDeadZone[vStdSEL6-1]/100.0);
if( t==(vNewUnitSEL6-1) ) { eSTL|=0x40;}
Edit(xfrom, MenuAttr.sY+InstAttr.y_offset+t*(SizeAttrB.h+InstAttr.h_instance),
SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
default:
break;
}
}
/***
纵向电机开关按钮响应
Vertical-Motor-Switch Menu:6 Page:8
***/
void SyncVMS_68(const int iCNL)
{
char szchar[20]={0};
unsigned char vStyle=0x03;
if(unit[iCNL].submenu1.bitfield.v_motorruning)
{
vStyle|=0x10;
if(iCNL<9)
{ sprintf(szchar, "%dU 开", iCNL+1);}
else
{ sprintf(szchar, "%dU开", iCNL+1);}
}
else
{
if(iCNL<9)
{ sprintf(szchar, "%dU 关", iCNL+1);}
else
{ sprintf(szchar, "%dU关", iCNL+1);}
}
Button(MenuAttr.sX+MenuAttr.tW+MenuAttr.bW/2-63,
MenuAttr.sY+InstAttr.y_offset+iCNL*(SizeAttrB.h+InstAttr.h_instance),
125, SizeAttrB.h, vStyle, szchar, 192, 192, 192);
}
/***
根据接收到的9#命令 刷新界面
***/
void UpdateM6_C9(const int iPAGE, const int iCNL)
{
char szE[10]={0};
int x=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset+SizeAttrB.w+InstAttr.v_instance;
int y=MenuAttr.sY+InstAttr.y_offset+(iCNL)*(SizeAttrB.h+InstAttr.h_instance);
switch( iPAGE )
{
case 1: // 纵向报警值
sprintf(szE, "%6.2f", unit[iCNL].submenu1.v_alarm/100.0);
break;
case 2: // 纵向微调值
sprintf(szE, "%6.2f", unit[iCNL].submenu1.v_adjust/100.0);
break;
case 9: // 横向报警值
sprintf(szE, "%6.2f", unit[iCNL].submenu1.h_alarm/100.0);
break;
case 10: // 横向微调值
sprintf(szE, "%6.2f", unit[iCNL].submenu1.h_adjust/100.0);
break;
default:
return;
}
if( iCNL==(vNewUnitSEL6-1) )
{ Edit(x, y, SizeAttrE.w, SizeAttrE.h, 0x4f, szE); ClearKBuffer();}
else
{ Edit(x, y, SizeAttrE.w, SizeAttrE.h, 0x0f, szE);}
}
/***
由于接收命令要刷新指定屏幕指定通道的参数显示 (保留当前光标)
***/
void UpdateM6_CAB(const int iCNL, char *ptr)
{
int x=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset+SizeAttrB.w+InstAttr.v_instance;
int y=MenuAttr.sY+InstAttr.y_offset+(iCNL)*(SizeAttrB.h+InstAttr.h_instance);
if( iCNL==vNewUnitSEL6-1 )
{ Edit(x, y, SizeAttrE.w, SizeAttrE.h, 0x4f, ptr); ClearKBuffer();}
else
{ Edit(x, y, SizeAttrE.w, SizeAttrE.h, 0x0f, ptr);}
}
/***
设置键盘输入限制
***/
void SetKState6(const int pageID)
{
switch( pageID )
{
case 1: // 纵向报警值
case 9: // 横向报警值
g_Klength=3; g_Kmask=0x02;
break;
case 2: // 纵向微调值
case 10: // 横向微调值
g_Klength=4; g_Kmask=0x00;
break;
case 3: // 纵向增益P值
case 4: // 纵向增益D值
case 11: // 横向增益P值
case 12: // 横向增益D值
g_Klength=2; g_Kmask=0x03;
break;
case 5: // 纵向平均值
case 13: // 横向平均值
g_Klength=1; g_Kmask=0x03;
break;
case 6: // 纵向周期频数
case 14: // 横向周期频数
g_Klength=1; g_Kmask=0x03;
break;
case 7: // 纵向不工作区
case 15: // 横向不工作区
g_Klength=3; g_Kmask=0x02;
break;
default:
g_Klength=0; g_Kmask=0x03;
break;
}
ClearKBuffer();
}
/***
单页标题背景
***/
void SubM6_bk(const int IDsel)
{
SubMenuPage(IDsel, 0);
if( VarST3000.Language )
{
ShowASCMemX(MenuAttr.sX+20, MenuAttr.sY+(IDsel-1)*(MenuAttr.tH+2)+(MenuAttr.tH-32)/2,
1, 2, szptr_m6_1[IDsel-1][1], 0, 0, 0);
}
else
{
ShowGB2312X(MenuAttr.sX+20, MenuAttr.sY+(IDsel-1)*(MenuAttr.tH+2)+(MenuAttr.tH-32)/2,
1, 2, szptr_m6_1[IDsel-1][0], 0, 0, 0);
}
}
/***
单页前景
***/
void SubM6_fr(const int IDsel)
{
int jcnl,xfrom,yfrom;
char szB[10],szE[10];
unsigned char uSTL,eSTL;
SubMenuPage(IDsel, 1);
if( VarST3000.Language )
{
ShowASCMemX(MenuAttr.sX+18, MenuAttr.sY+(IDsel-1)*(MenuAttr.tH+2)+(MenuAttr.tH-32)/2-1,
1, 2, szptr_m6_1[IDsel-1][1], 200, 50, 50);
}
else
{
ShowGB2312X(MenuAttr.sX+18, MenuAttr.sY+(IDsel-1)*(MenuAttr.tH+2)+(MenuAttr.tH-32)/2-1,
1, 2, szptr_m6_1[IDsel-1][0], 200, 50, 50);
}
vOldUnitSEL6=vNewUnitSEL6=0;
if( IDsel!=8 ) { DrawNumKBoard(690, 100);}
switch( IDsel )
{
case 1: // 纵向报警值
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%6.2f", unit[jcnl].submenu1.v_alarm/100.0);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 2: // 纵向微调值
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%6.2f", unit[jcnl].submenu1.v_adjust/100.0);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 3: // 纵向增益P值
SyncSTDSEL_M6(vStdSEL6);
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%5d", unit[jcnl].submenu2.VPlus_P[vStdSEL6-1]);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 4: // 纵向增益D值
SyncSTDSEL_M6(vStdSEL6);
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%5d", unit[jcnl].submenu2.VPlus_D[vStdSEL6-1]);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 5: // 纵向平均值
SyncSTDSEL_M6(vStdSEL6);
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%5d", unit[jcnl].submenu2.VHaver[vStdSEL6-1].VAver);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 6: // 纵向周期频数
SyncSTDSEL_M6(vStdSEL6);
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
uSTL=0x81; eSTL=0x0f;
memset(szB, 0, 10); memset(szE, 0, 10);
sprintf(szB, "%dU", jcnl+1);
sprintf(szE, "%5d", unit[jcnl].submenu2.VFps[vStdSEL6-1]);
yfrom+=(SizeAttrB.h+InstAttr.h_instance);
if( !vNewUnitSEL6 )
{
uSTL|=0x10; eSTL|=0x40;
vNewUnitSEL6=jcnl+1;
vOldUnitSEL6=vNewUnitSEL6;
}
Button(xfrom, yfrom, SizeAttrB.w, SizeAttrB.h, uSTL, szB, 192, 192, 192);
Edit(xfrom+SizeAttrB.w+InstAttr.v_instance, yfrom, SizeAttrE.w, SizeAttrE.h, eSTL, szE);
}
break;
case 7: // 纵向不工作区
SyncSTDSEL_M6(vStdSEL6);
xfrom=MenuAttr.sX+MenuAttr.tW+InstAttr.x_offset;
yfrom=MenuAttr.sY+InstAttr.y_offset;
for(jcnl=1; jcnl<VarST3000.UnitCounts; jcnl++)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -