📄 display.cpp
字号:
Outchar12(X6+18,Y7+Y_CH_OFFSET,"●",RED);
}
if(_disp.active[6]){
kom_form(_disp.db_bw2.r_bandwidth,msg);
setcolor(FILL_FORM_R);
outtextxy(X4+40,Y8+Y_EN_OFFSET,msg);
if(_disp.flag_bandwidth2)
Outchar12(X6+18,Y8+Y_CH_OFFSET,"●",GREEN);
else
Outchar12(X6+18,Y8+Y_CH_OFFSET,"●",RED);
}
if(_disp.active[7]){
sprintf(msg,"%.1fdB",_disp.sb_att.r_attenuation_l);
setcolor(FILL_FORM_R);
outtextxy(X4+10,Y9+Y_EN_OFFSET,msg);
sprintf(msg,"%.1fdB",_disp.sb_att.r_attenuation_r);
setcolor(FILL_FORM_R);
outtextxy(X5+10,Y9+Y_EN_OFFSET,msg);
if(_disp.flag_sb_att)
Outchar12(X6+18,Y9+Y_CH_OFFSET,"●",GREEN);
else
Outchar12(X6+18,Y9+Y_CH_OFFSET,"●",RED);
}
if(_disp.flag_all&&(_disp.active[0]|_disp.active[1]|_disp.active[2]|_disp.active[3]|_disp.active[4]|_disp.active[5]|_disp.active[6]|_disp.active[7]))
Outchar12(X6+18,Y10+Y_CH_OFFSET,"●",GREEN);
}
void fill_form_b()
{
clear_rect(E_LX+455,E_LY+Y_DOT_OFFSET-1,E_LX+470,E_LY+Y_DOT_OFFSET+14);
if(_disp.active[0]){
if(_disp.flag_freq_diff)
Outchar12(E_LX+30,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+30,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.active[1]){
if(_disp.flag_loss)
Outchar12(E_LX+101,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+101,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.active[2]){
if(_disp.flag_ripple)
Outchar12(E_LX+172,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+172,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.active[3]||_disp.active[4])
if(!((_disp.active[3]&&_disp.flag_db_bw1==FALSE)||
(_disp.active[4]&&_disp.flag_bandwidth1==FALSE)))
Outchar12(E_LX+243,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+243,E_LY+Y_DOT_OFFSET,"●",RED);
if(_disp.active[5]||_disp.active[6])
if(!((_disp.active[5]&&_disp.flag_db_bw2==FALSE)||
(_disp.active[6]&&_disp.flag_bandwidth2==FALSE)))
Outchar12(E_LX+314,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+314,E_LY+Y_DOT_OFFSET,"●",RED);
/* if(_disp.active[3]){
if(_disp.flag_db_bw1)
Outchar12(E_LX+243,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+243,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.active[4]){
if(_disp.flag_bandwidth1)
Outchar12(E_LX+314,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+314,E_LY+Y_DOT_OFFSET,"●",RED);
} */
/* if(_disp.active[5]){
if(_disp.flag_db_bw2)
Outchar12(E_LX+385,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+385,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.active[6]){
if(_disp.flag_bandwidth2)
Outchar12(E_LX+456,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+456,E_LY+Y_DOT_OFFSET,"●",RED);
} */
if(_disp.active[7]){
if(_disp.flag_sb_att)
Outchar12(E_LX+385,E_LY+Y_DOT_OFFSET,"●",GREEN);
else
Outchar12(E_LX+385,E_LY+Y_DOT_OFFSET,"●",RED);
}
if(_disp.flag_all&&(_disp.active[0]|_disp.active[1]|_disp.active[2]|_disp.active[3]|_disp.active[4]|_disp.active[5]|_disp.active[6]|_disp.active[7]))
Outchar12(E_LX+456,E_LY+Y_DOT_OFFSET,"●",GREEN);
}
void kom_form(long pf,char msg[])
{
// char msg[20];
if(pf<1000)
{
sprintf(msg,"%ld",pf);
// msg[7]='\0';
strcat(msg,"Hz");
// msg[10]='\0';
}
else if(pf<1000000)
{
sprintf(msg,"%.3f",pf/1000.0f);
// msg[7]='\0';
strcat(msg,"kHz");
// msg[10]='\0';
}
else if(pf<=50000000)
{
sprintf(msg,"%f",pf/1000000.0f);
msg[7]='\0';
strcat(msg,"MHz");
// msg[10]='\0';
}
}
void draw_form()
{
clear_rect(0,0,A_RX+3,479);
clear_rect(0,0,A_RX+3,479);
setcolor(WHITE); //border line
setlinestyle(SOLID_LINE,0,THICK_WIDTH);
rectangle(X0,Y0,X7,Y12); //modify on 0823
setlinestyle(SOLID_LINE,0,NORM_WIDTH); //level line
line(X0,Y1,X7,Y1);
line(X0,Y2,X7,Y2);
line(X0,Y3,X7,Y3);
line(X0,Y5,X7,Y5);
line(X1,Y6,X7,Y6);
line(X0,Y7,X7,Y7);
line(X1,Y8,X7,Y8);
line(X0,Y9,X7,Y9);
line(X0,Y11,X7,Y11);
line(X1,Y5,X1,Y9); //upright line
line(X2,Y0,X2,Y11);
line(X3,Y5,X3,Y6);
line(X3,Y7,X3,Y8);
line(X4,Y0,X4,Y11);
line(X5,Y5,X5,Y6);
line(X5,Y7,X5,Y8);
line(X5,Y9,X5,Y11);
line(X6,Y0,X6,Y12);
Outchar12(X0+6,Y0+Y_CH_OFFSET,"测 量 项 目",WHITE);
Outchar12(X2+45,Y0+Y_CH_OFFSET,"测 量 设 定",WHITE);
Outchar12(X4+45,Y0+Y_CH_OFFSET,"测 量 结 果",WHITE);
Outchar12(X6+8,Y0+Y_CH_OFFSET,"结论",WHITE);
Outchar12(X0+4,Y1+Y_CH_OFFSET,"中心频率±偏差",WHITE);
Outchar12(X0+4,Y2+Y_CH_OFFSET,"插 入 损 耗",WHITE);
Outchar12(X0+4,Y3+3,"通 带 波 动",WHITE);
Outchar12(X1+6,Y5+Y_CH_OFFSET,"频率点",WHITE);
Outchar12(X1+6,Y6+Y_CH_OFFSET,"带 宽",WHITE);
Outchar12(X1+6,Y7+Y_CH_OFFSET,"频率点",WHITE);
Outchar12(X1+6,Y8+Y_CH_OFFSET,"带 宽",WHITE);
Outchar12(X0+4,Y9+3,"阻 带 衰 减",WHITE);
Outchar12(X0+4,Y11+Y_CH_OFFSET,"综 合 结 果",WHITE);
}
void disp_on_off()
{
// for(int i=0;i<8;i++){
if(((_softkeyid1==41||_softkeyid2==413)&&_disp.active[0]==ON)||
((_softkeyid1==43||_softkeyid2==433)&&_disp.active[2]==ON)){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,3*59+22,B_RX-2,3*59+40);
Outchar12(B_LX+10,3*59+22,"开",TEXTDIGITAL);
Outchar12(B_RX-25,3*59+22,"关",TEXTMENU);
}
else if((_softkeyid1==42||_softkeyid2==422)&&_disp.active[1]==ON){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,2*59+22,B_RX-2,2*59+40);
Outchar12(B_LX+10,2*59+22,"开",TEXTDIGITAL);
Outchar12(B_RX-25,2*59+22,"关",TEXTMENU);
}
else if(((_softkeyid1==41||_softkeyid2==413)&&_disp.active[0]==OFF)||
((_softkeyid1==43||_softkeyid2==433)&&_disp.active[2]==OFF)){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,3*59+22,B_RX-2,3*59+40);
Outchar12(B_RX-25,3*59+22,"关",TEXTDIGITAL);
Outchar12(B_LX+10,3*59+22,"开",TEXTMENU);
}
else if((_softkeyid1==42||_softkeyid2==422)&&_disp.active[1]==OFF){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,2*59+22,B_RX-2,2*59+40);
Outchar12(B_RX-25,2*59+22,"关",TEXTDIGITAL);
Outchar12(B_LX+10,2*59+22,"开",TEXTMENU);
}
else if((_softkeyid1==46||_softkeyid2==463)&&_disp.active[7]==ON){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,3*59+22,B_RX-2,3*59+40);
Outchar12(B_LX+10,3*59+22,"开",TEXTDIGITAL);
Outchar12(B_RX-25,3*59+22,"关",TEXTMENU);
}
else if((_softkeyid1==46||_softkeyid2==463)&&_disp.active[7]==OFF){
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,3*59+22,B_RX-2,3*59+40);
Outchar12(B_LX+10,3*59+22,"开",TEXTMENU);
Outchar12(B_RX-25,3*59+22,"关",TEXTDIGITAL);
}
// }
}
void FF4()
{
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,5*59+22,B_RX-2,5*59+40);
if((_softkeyid1==44&&_disp.active[3]==ON)
||(_softkeyid1==45&&_disp.active[5]==ON)){
Outchar12(B_LX+10,5*59+8+15,"开",TEXTDIGITAL);
Outchar12(B_RX-25,5*59+8+15,"关",TEXTMENU);
}
else if((_softkeyid1==44&&_disp.active[3]==OFF)
||(_softkeyid1==45&&_disp.active[5]==OFF)) {
Outchar12(B_LX+10,5*59+8+15,"开",TEXTMENU);
Outchar12(B_RX-25,5*59+8+15,"关",TEXTDIGITAL);
}
}
void FF5()
{
setfillstyle(SOLID_FILL,TEXTMENUBK);
bar(B_LX+2,6*59+22,B_RX-2,6*59+40);
if((_softkeyid1==44&&_disp.active[4]==ON)
||(_softkeyid1==45&&_disp.active[6]==ON)){
Outchar12(B_LX+10,6*59+22,"开",TEXTDIGITAL);
Outchar12(B_RX-25,6*59+22,"关",TEXTMENU);
}
else if((_softkeyid1==44&&_disp.active[4]==OFF)
||(_softkeyid1==45&&_disp.active[6]==OFF)){
Outchar12(B_RX-25,6*59+22,"关",TEXTDIGITAL);
Outchar12(B_LX+10,6*59+22,"开",TEXTMENU);
}
}
void border_disp(int)
{
}
void DispSwitch()
{
char i;
switch(disp_switch){
case 1:
mda_map->Realloc(-1);
mda_map->ScreenClear();
draw_form();
disable();
for(i=0;i<17;i++)
wri_form(i);
disable();
old_a_on_off = _chab[0].on_off;
old_b_on_off = _chab[1].on_off;
_chab[0].on_off = ON;
_chab[1].on_off = OFF;
old_ch_sel = ch_sel;
ch_sel=0;
chs=0;
rst_num_mem();
refr_disp();
break;
case 2:
mda_map->Realloc(320);
mda_map->ScreenClear();
graph1();
refresh_up();
if(alternative == ON&&_chab[0].on_off==OFF&&_chab[1].on_off==ON){
rem_chs = chs;
chs = 0;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
else if(alternative == ON&&_chab[1].on_off==OFF&&_chab[0].on_off==ON){
rem_chs = chs;
chs = 1;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
refr_disp();
break;
case 3:
mda_map->Realloc(400);
mda_map->ScreenClear();
ch_sel = old_ch_sel;
_chab[0].on_off = old_a_on_off;
_chab[1].on_off = old_b_on_off;
clear_rect(A_LX-3,A_LY,A_RX+3,A_RY);
clear_rect(A_LX-3,A_LY,A_RX+3,A_RY);
graph();
refresh_up();
if(alternative == ON&&_chab[0].on_off==OFF&&_chab[1].on_off==ON){
rem_chs = chs;
chs = 0;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
else if(alternative == ON&&_chab[1].on_off==OFF&&_chab[0].on_off==ON){
rem_chs = chs;
chs = 1;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
if(ch_sel==0)
Outchar12(35,445,"起始频率: 终止频率:",TEXTFRTLN);
else
Outchar12(35,445,"起始频率: 终止频率:",TEXTSEDLN);
khz_ormhz(_freq[ch_sel].start_freq,0);
khz_ormhz(_freq[ch_sel].end_freq,1);
refr_disp();
break;
case 4:
mda_map->Realloc(320);
mda_map->ScreenClear();
ch_sel = old_ch_sel;
_chab[0].on_off = old_a_on_off;
_chab[1].on_off = old_b_on_off;
graph1();
refresh_up();
if(alternative == ON&&_chab[0].on_off==OFF&&_chab[1].on_off==ON){
rem_chs = chs;
chs = 0;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
else if(alternative == ON&&_chab[1].on_off==OFF&&_chab[0].on_off==ON){
rem_chs = chs;
chs = 1;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
refr_disp();
break;
case 5:
mda_map->Realloc(400);
mda_map->ScreenClear();
clear_rect(A_LX-3,A_LY,A_RX+3,A_RY);
clear_rect(A_LX-3,A_LY,A_RX+3,A_RY);
graph();
refresh_up();
if(alternative == ON&&_chab[0].on_off==OFF&&_chab[1].on_off==ON){
rem_chs = chs;
chs = 0;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
else if(alternative == ON&&_chab[1].on_off==OFF&&_chab[0].on_off==ON){
rem_chs = chs;
chs = 1;
draw_graph(chs==0?_system.colora:_system.colorb);
chs = rem_chs;
}
if(ch_sel==0)
Outchar12(35,445,"起始频率: 终止频率:",TEXTFRTLN);
else
Outchar12(35,445,"起始频率: 终止频率:",TEXTSEDLN);
khz_ormhz(_freq[ch_sel].start_freq,0);
khz_ormhz(_freq[ch_sel].end_freq,1);
refr_disp();
break;
case 6:
mda_map->Realloc(-1);
mda_map->ScreenClear();
draw_form();
for(i=0;i<17;i++)
wri_form(i);
disable();
old_a_on_off = _chab[0].on_off;
old_b_on_off = _chab[1].on_off;
// old_a_flag = _chab[0].flag;
_chab[0].on_off = ON;
_chab[1].on_off = OFF;
// _chab[0].flag = 0;
old_ch_sel = ch_sel;
ch_sel=0;
chs=0;
break;
default:
break;
}
vision();
disp_switch=0;
// DispSwitchBusy = FALSE;
}
BOOL StoreDisp()
{
disable();
FILE* fp;
if((fp = fopen("Display.dat","wb"))==NULL){
return FALSE;
}
fwrite(&_disp,sizeof(_DISP),1,fp);
fwrite(&old_ch_sel,sizeof(char),1,fp);
fwrite(&old_a_on_off,sizeof(ON_OFF),1,fp);
fwrite(&old_b_on_off,sizeof(ON_OFF),1,fp);
fclose(fp);
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -