📄 display.cpp
字号:
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data2&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//f
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data2&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//g
x0=x0;
y0=y0;
x1=x0+w;
y1=y0;
if(data2&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
x0=n*j+cx+w-j;
y0=cy+2*h;
if(data2&0x01)
pCanvas->Ellipse(x0-1,y0-1,x0+1,y0+1);
}
void TMainForm::Draw_Num(unsigned char n,char data1,char data2,TCanvas *pCanvas)
{
int i;
int w=25,j=35,cx=20;
int h=30,cy=20;
int x0,y0,x1,y1;
//a
x0=n*j+cx;
y0=cy;
x1=x0+w;
y1=y0;
if(data1&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//b
x0=x1;
y0=y1;
x1=x0-5;
y1=y0+h;
if(data1&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//c
x0=x1;
y0=y1;
x1=x0-5;
y1=y0+h;
if(data1&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//d
x0=x1;
y0=y1;
x1=x0-w;
y1=y0;
if(data1&0x01)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//e
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data2&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//f
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data2&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//g
x0=x0;
y0=y0;
x1=x0+w;
y1=y0;
if(data2&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
}
void TMainForm::Draw_State(unsigned char n,char data[],TCanvas *pCanvas)
{
int i;
int w=25,j=35,cx=60;
int h=30,cy=20;
int x0,y0,x1,y1;
//a
x0=n*j+cx;
y0=cy;
x1=x0+w;
y1=y0;
if(data[0]&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//b
x0=x1;
y0=y1;
x1=x0-5;
y1=y0+h;
if(data[3]&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//c
x0=x1;
y0=y1;
x1=x0-5;
y1=y0+h;
if(data[3]&0x01)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//d
x0=x1;
y0=y1;
x1=x0-w;
y1=y0;
if(data[0]&0x01)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//e
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data[0]&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//f
x0=x1;
y0=y1;
x1=x0+5;
y1=y0-h;
if(data[0]&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//g
x0=x0;
y0=y0;
x1=x0+w/2;
y1=y0;
if(data[1]&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//k h
x0=x1;
y0=y0;
x1=x0+w/2;
y1=y0;
if(data[2]&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//h i
x1=n*j+cx;
y1=cy;
if(data[1]&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//i j
x1=n*j+cx+w/2;
y1=cy;
if(data[2]&0x08)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//j k
x1=n*j+cx+w;
y1=cy;
if(data[2]&0x04)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//n l
x1=n*j+cx-10;
y1=cy+2*h;
if(data[1]&0x02)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//m m
x1=n*j+cx+w/2-10;
y1=cy+2*h;
if(data[1]&0x01)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
//l n
x1=n*j+cx+w-10;
y1=cy+2*h;
if(data[2]&0x01)
{
pCanvas->MoveTo(x0,y0);
pCanvas->LineTo(x1,y1);
}
}
void TMainForm::Disp_Turn_Data_TO_Code8(double f,unsigned char c[12],int n)
{
double d;
// unsigned int w[6]={4,3,2,1,0};
int dp;
d=f;
if(d<0.0)
{
d=d*(-1.0);
}
if(n==1)
d=d*10.0;
else if(n==2)
d=d*100.0;
Disp_HexToDec(d,c);
dp=Disp_Process_Data(n,c);
if(n!=0)
c[(n-1)*2+1]|=0x01; //在第位上显示小数点
if(f<0.0)
{
c[dp+1]=0x00;
c[dp+2]=0x04;
}
}
void TMainForm::Disp_Turn_Data_TO_Code8_LE(unsigned long f,unsigned char c[12])
{
unsigned long f1;
int j=0;
f1=f;
while(1)
{
f1=f1/10;
if(f1<100000)
break;
j++;
}
j=j+5;
Disp_HexToDec(f1,c);
// Process_Data(w[n],c);
// if(n!=0)
c[7]|=0x01; //在第位上显示小数点
c[2]=0x09; //E
c[3]=0x0E;
c[0]=m_Code[j][0];
c[1]=m_Code[j][1];
}
void TMainForm::Disp_Turn_Long(unsigned long f,char data[12])
{
if(f<100000)
Disp_Turn_Data_TO_Code8(f,data,0);
else
Disp_Turn_Data_TO_Code8_LE(f,data);
}
void TMainForm::Disp_Turn_Str_TO_Code(unsigned char s[],char data[12])
{
unsigned int c,i;
for(i=0;i<5;i++)
{
if(s[4-i]>=0x41 && s[4-i]<0x041+26)
c=s[4-i]-65+10;
else if(s[4-i]>=0x30 && s[4-i]<0x030+10)
c=s[4-i]-0x30;
else if(s[4-i]>='a' && s[4-i]<'a'+26)
c=s[4-i]-'a'+10+26;
data[i*2]=m_Code[c][0];
data[i*2+1]=m_Code[c][1];
}
}
void TMainForm::Disp_Debug_Param()
{
char d[6];
// strcpy(d,m_Set_YFCT[m_YFCT]);
// YFCTEdit->Text=d;//1
YFCTEdit->Text=m_Set_YFCT[m_YFCT];//1
YPGLEdit->Text=m_Set_YAGL[m_YAGL];//2
YWAYEdit->Text=m_Set_YWAY[m_YWAY];//3
SCUREdit->Text=m_Set_SCUR[m_SCUR];//6
SDIREdit->Text=m_Set_SDIR[m_SDIR];//7
SPRAEdit->Text=CurrToStr(m_SPRA);//8
SPREEdit->Text=CurrToStr(m_SPRE);//9
TSUPEdit->Text=CurrToStr(m_TSUP);//10
TSDOEdit->Text=CurrToStr(m_TSDO);//11
SFCTEdit->Text=m_Set_SFCT[m_SFCT];//12
DEBAEdit->Text=CurrToStr(m_DEBA);//34
YAEdit->Text=CurrToStr(m_YA);//35
YEEdit->Text=CurrToStr(m_YE);//36
YNRMEdit->Text=m_Set_YNRM[m_YNRM];//37
YDIREdit->Text=m_Set_YDIR[m_YDIR];//38
YCLSEdit->Text=m_Set_YCLS[m_YCLS];//39
YCDOEdit->Text=CurrToStr(m_YCDO);//40
YCUPEdit->Text=CurrToStr(m_YCUP);//41
BIN1Edit->Text=m_Set_BIN12[m_BIN1];//42
BIN2Edit->Text=m_Set_BIN12[m_BIN2];//43
AFCTEdit->Text=m_Set_AFCT[m_AFCT];//44
A1Edit->Text=CurrToStr(m_A1);//45
A2Edit->Text=CurrToStr(m_A2);//46
HFCTEdit->Text=m_Set_HFCT[m_HFCT];//47
HTIMEdit->Text=CurrToStr(m_HTIM);//48
HLIMEdit->Text=CurrToStr(m_HLIM);//49
// HSTRKEdit->Text=CurrToStr(m_HSTRK);//50
// HDCHGEdit->Text=CurrToStr(m_HDCHG);//51
HZEROEdit->Text=CurrToStr(m_HZERO);//52
HOPENEdit->Text=CurrToStr(m_HOPEN);//53
HDEBAEdit->Text=CurrToStr(m_HDEBA);//54
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -