📄 main.c.bak
字号:
char mobil[20];
char home[20];
char office[20];
U16 Name[20];
ClearScreen();
ListCtrlReMoveAll(pMainListCtrl);
mainstatus=SET_SERALL;
for( i=0;i<14;i++){
strcpy(name,people[i].name);
strChar2Unicode(Name,name);
AddStringListCtrl(pMainListCtrl,Name);}
ReDrawOSCtrl();
}
void ShowDetail()
{ int i;
char name[20];
char relation[20];
char mobil[20];
char home[20];
char office[20];
char name2[14][20];
char relation2[14][20];
char mobil2[14][20];
char home2[14][20];
char office2[14][20];
U16 Name[14][20];
U16 Relation[14][20];
U16 Mobil[14][20];
U16 Home[14][20];
U16 Office[14][20];
structRECT rect;
PDC pdc;
ClearScreen();
pdc= CreateDC();
mainstatus=SHOW_DETAIL;
TextOut(pdc,135,50,ch1,TRUE,FONTSIZE_SMALL);
TextOut(pdc, 135, 75, ch2, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 100, ch3, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 125, ch4, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 150, ch5, TRUE, FONTSIZE_SMALL);
SetRect(&rect,185,45,318,65); //创建姓名文本框
pTextCtrl1=CreateTextCtrl(ID_SetName_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetRect(&rect,185,70,318,90);//创建关系文本框
pTextCtrl2=CreateTextCtrl(ID_SetRela_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetRect(&rect,185,95,318,115);//创建手机文本框
pTextCtrl3=CreateTextCtrl(ID_SetMobil_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetRect(&rect,185,120,318,140);//创建家庭电话文本框
pTextCtrl4=CreateTextCtrl(ID_SetHome_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetRect(&rect,185,145,318,165);//创建办公电话文本框
pTextCtrl5=CreateTextCtrl(ID_SetOffice_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
for(i=0;i<14;i++){
strcpy(name,people[i].name);
strcat(name2[i],name);
strChar2Unicode(Name[i],name2[i]);
strcpy(relation,people[i].relation);
strcat(relation2[i],relation);
strChar2Unicode(Relation[i],relation2[i]);
strcpy(mobil,people[i].mobil);
strcat(mobil2[i],mobil);
strChar2Unicode(Mobil[i],mobil2[i]);
strcpy(home,people[i].home);
strcat(home2[i],home);
strChar2Unicode(Home[i],home2[i]);
strcpy(office,people[i].office);
strcat(office2[i],office);
strChar2Unicode(Office[i],office2[i]);
}
SetTextCtrlText(pTextCtrl1, Name[pMainListCtrl->CurrentSel],TRUE);
SetTextCtrlText(pTextCtrl2, Relation[pMainListCtrl->CurrentSel],TRUE);
SetTextCtrlText(pTextCtrl3, Mobil[pMainListCtrl->CurrentSel],TRUE);
SetTextCtrlText(pTextCtrl4, Home[pMainListCtrl->CurrentSel],TRUE);
SetTextCtrlText(pTextCtrl5, Office[pMainListCtrl->CurrentSel],TRUE);
ReDrawOSCtrl();
DestoryDC(pdc);
}
void CreateSetTelephoneArea()
{
char name[20];
char relation[20];
char mobil[20];
char home[20];
char office[20];
U16 str[12];
U16 Relation[20];
U16 Mobil[20];
U16 Home[20];
U16 Office[20];
structRECT rect;
PDC pdc;
ClearScreen();
pdc=CreateDC();
mainstatus=SET_ADDNEW;
strcpy(name,people[0].name);
strChar2Unicode(str,name);
strcpy(relation,people[0].relation);
strChar2Unicode(Relation,relation);
strcpy(mobil,people[0].mobil);
strChar2Unicode(Mobil,mobil);
strcpy(home,people[0].home);
strChar2Unicode(Home,home);
strcpy(office,people[0].office);
strChar2Unicode(Office,office);
TextOut(pdc,135,50,ch1,TRUE,FONTSIZE_SMALL);
TextOut(pdc, 135, 75, ch2, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 100, ch3, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 125, ch4, TRUE, FONTSIZE_SMALL);
TextOut(pdc, 135, 150, ch5, TRUE, FONTSIZE_SMALL);
SetRect(&rect,185,45,318,65); //创建姓名文本框
pTextCtrl1=CreateTextCtrl(ID_SetName_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetTextCtrlText(pTextCtrl1, str,TRUE);
SetRect(&rect,185,70,318,90);//创建关系文本框
pTextCtrl2=CreateTextCtrl(ID_SetRela_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetTextCtrlText(pTextCtrl2, Relation,TRUE);
SetRect(&rect,185,95,318,115);//创建手机文本框
pTextCtrl3=CreateTextCtrl(ID_SetMobil_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetTextCtrlText(pTextCtrl3, Mobil,TRUE);
SetRect(&rect,185,120,318,140);//创建家庭电话文本框
pTextCtrl4=CreateTextCtrl(ID_SetHome_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetTextCtrlText(pTextCtrl4, Home,TRUE);
SetRect(&rect,185,145,318,165);//创建办公电话文本框
pTextCtrl5=CreateTextCtrl(ID_SetOffice_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
SetTextCtrlText(pTextCtrl5, Office,TRUE);
ReDrawOSCtrl();
DestoryDC(pdc);
}
void DestorySetTelephoneArea()
{
PDC pdc;
pdc=CreateDC();
DestoryTextCtrl(pTextCtrl1);
DestoryTextCtrl(pTextCtrl2);
DestoryTextCtrl(pTextCtrl3);
DestoryTextCtrl(pTextCtrl4);
DestoryTextCtrl(pTextCtrl5);
FillRect(pdc, 134, 40, 319,200, GRAPH_MODE_NORMAL, COLOR_WHITE);
DestoryDC(pdc);
}
U8 OnOk()
{
switch(mainstatus){
case MAIN_MENU: //主菜单状态
if(pMainListCtrl->CurrentSel>=0 && pMainListCtrl->CurrentSel<4)
( (void (*)(void)) (MainFunction[pMainListCtrl->CurrentSel]) )();
return TRUE;
case MAIN_TELE:
if(pMainListCtrl->CurrentSel>=0 && pMainListCtrl->CurrentSel<5)
( (void (*)(void)) (SetFunction[pMainListCtrl->CurrentSel]) )();
return TRUE;
case SET_SERALL:
if(pMainListCtrl->CurrentSel>=0 && pMainListCtrl->CurrentSel<15)
( (void (*)(void)) (SetFunction1[pMainListCtrl->CurrentSel]) )();
return TRUE;
}
return FALSE;
}
U8 OnCancel()
{
structRECT rect;
PDC pdc;
pdc=CreateDC();
switch(mainstatus){
case MAIN_TELE:
ClearScreen();
ReLoadListCtrl(pMainListCtrl,&MainFn[0],MAIN_FUNCTION_NUM);
mainstatus=MAIN_MENU;
ReDrawOSCtrl();
break;
case MAIN_JISHI:
ClearScreen();
ReLoadListCtrl(pMainListCtrl,&MainFn[0],MAIN_FUNCTION_NUM);
mainstatus=MAIN_MENU;
ReDrawOSCtrl();
break;
case MAIN_RICHENG:
ClearScreen();
ReLoadListCtrl(pMainListCtrl,&MainFn[0],MAIN_FUNCTION_NUM);
mainstatus=MAIN_MENU;
ReDrawOSCtrl();
break;
case SET_ADDNEW:
DestorySetTelephoneArea();
ClearScreen();
mainstatus=MAIN_TELE;
ReLoadListCtrl(pMainListCtrl,&MainSer[0],SET_FUNCTION_NUM );
ReDrawOSCtrl();
break;
case SET_SERALL:
DestoryTextCtrl(pTextCtrl1);
DestoryTextCtrl(pTextCtrl2);
DestoryTextCtrl(pTextCtrl3);
DestoryTextCtrl(pTextCtrl4);
DestoryTextCtrl(pTextCtrl5);
FillRect(pdc, 134, 40, 319,200, GRAPH_MODE_NORMAL, COLOR_WHITE);
ClearScreen();
ReLoadListCtrl(pMainListCtrl,&MainSer[0],SET_FUNCTION_NUM );
mainstatus=MAIN_TELE;
ReDrawOSCtrl();
break;
case SHOW_DETAIL:
DestoryTextCtrl(pTextCtrl1);
DestoryTextCtrl(pTextCtrl2);
DestoryTextCtrl(pTextCtrl3);
DestoryTextCtrl(pTextCtrl4);
DestoryTextCtrl(pTextCtrl5);
FillRect(pdc, 134, 40, 319,200, GRAPH_MODE_NORMAL, COLOR_WHITE);
ClearScreen();
ShowAll();
}
DestoryDC(pdc);
return TRUE;
}
U8 onKey(int nkey, int fnkey)
{ FILE *pfile;
switch(nkey){
case 4: ClearScreen();
++i;
i=i%14;
LCD_printf("Name: %s\n",people[i].name);
LCD_printf("Relation: %s\n",people[i].relation);
LCD_printf("Mobil: %s\n",people[i].mobil);
LCD_printf("Home: %s\n",people[i].home);
LCD_printf("Office: %s\n",people[i].office);
return;
case 5: ClearScreen();
--i;
i=i+14;
i=i%14;
LCD_printf("Name: %s\n",people[i].name);
LCD_printf("Relation: %s\n",people[i].relation);
LCD_printf("Mobil: %s\n",people[i].mobil);
LCD_printf("Home: %s\n",people[i].home);
LCD_printf("Office: %s\n",people[i].office);
return;
case 3: //F1=move up
return OnKeyUp();
case 7: //F2=move down
return OnKeyDown();
case 11: //F3=OK
return OnOk();
case 15: //F4=cancel
return OnCancel();
}
return FALSE;
}
////////////////////////////////////////////////////////////////
void Rtc_Disp_Task(void *Id) //时钟显示更新任务
{
U16 strtime[10];
INT8U err;
for(;;){
if(Rtc_IsTimeChange(RTC_SECOND_CHANGE)){//不需要更新显示
Rtc_Format("%H:%I:%S",strtime);
SetTextCtrlText(ptimeTextCtrl, strtime,TRUE);
}
OSTimeDly(250);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -