📄 settimearea.c
字号:
#include "..\inc\drv\Rtc.h"
#include "..\inc\drv\Display.h"
#include "..\ucos-ii\add\control.h"
#include "..\inc\resource.h"
#include "..\inc\SetTimeArea.h"
#include <time.h>
#include <stdio.h>
#define STStatus_SetSelect 0
#define STStatus_SetTime 1
#define STStatus_SetDate 2
#define STStatus_TimeZone 6
#define STStatus_SetYear 3
#define STStatus_SetMonth 4
#define STStatus_SetDay 5
#define STStatus_Setok 10
#define ID_TimeZoneListBox 19
#define ID_TimeZone_TextCtrl 20
#define ID_MainButtonCtrl 21
#define ID_TimeZone_TextCtrl3 24
PTextCtrl pDateTextCtrl;
PTextCtrl pTimeTextCtrl;
PTextCtrl pYearTextCtrl;
PTextCtrl pHourTextCtrl;
PTextCtrl pMonthTextCtrl;
PTextCtrl pMinuteTextCtrl;
PTextCtrl pDayTextCtrl;
PTextCtrl pSecondTextCtrl;
PTextCtrl pTimeZoneTextCtrl1,pTimeZoneTextCtrl2,pTimeZoneTextCtrl100;
PTextCtrl pTimeZoneTextCtrl52,pTimeZoneTextCtrl53,pTimeZoneTextCtrl54,pTimeZoneTextCtrl55,pTimeZoneTextCtrl56,
pTimeZoneTextCtrl57,pTimeZoneTextCtrl58,pTimeZoneTextCtrl59,pTimeZoneTextCtrl60,pTimeZoneTextCtrl61,pTimeZoneTextCtrl62;
PTextCtrl pTimeZoneTextCtrl101,pTimeZoneTextCtrl102,pTimeZoneTextCtrl103,pTimeZoneTextCtrl104;
U32 SetTimeStatus;
U32 CheckTimeStatus;
U32 TimeZoneStatus;
PButtonCtrl pButtonCtrl1,pButtonCtrl2,pButtonCtrl3,pButtonCtrl4,pButtonCtrl5,pButtonCtrl6;
extern U16* MainWe[];
extern U16* MainWe1[];
extern U16* MainWe2[];
extern U16* MainWe3[];
extern U16* MainWe4[];
extern U16* MainWe5[];
extern U16* MainWe6[];
extern U16* MainWe7[];
extern U16* MainTip[];
extern U16* MainCity[];
extern U16* MainFn[];
extern U16* MainDate[];
extern U32 mainstatus;
extern PTextCtrl pStatusTextCtrl;
U16 B[]={0x786e,0x5b9a,0x00};
U16 C[]={0x53d6,0x6d88,0x00};
U16 D[]={0x003c,0x003c,0x00};
U16 A[]={0x003e,0x003e,0x00};
U16 E[]={0x003c,0x00};
U16 F[]={0x003e,0x00};
U16 Z[]={0x8f93,0x5165,0x5317,0x4eac,0x65f6,0x95f4,0x00};
#define firstyear 1936
#define lastyear (firstyear+sizeof(lunarcal)/sizeof(struct taglunarcal)-1)
void exchange()
{
int solarcal[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
/* 西历年每月之累积日数, 平年与闰年 */
int solardays[2][14] = {
{ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365, 396 },
{ 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366, 397 } };
struct convdate
{
int source;
int solaryear;
int solarmonth;
int solardate;
int lunaryear;
int lunarmonth;
int lunardate;
int weekday;
int kan;
int chih;
};
struct taglunarcal
{
int basedays; // 到西历 1 月 1 日到农历正月初一的累积日数
int intercalation; // 闰月月份. 0==此年没有闰月
int baseweekday; // 此年西历 1 月 1 日为星期几再减 1
int basekanchih; // 此年西历 1 月 1 日之干支序号减 1
int monthdays[13]; // 此农历年每月之大小, 0==小月(29日), 1==大月(30日)
};
struct taglunarcal lunarcal[] = {
{ 23, 3, 2, 17, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0 }, //1936
{ 41, 0, 4, 23, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1 },
{ 30, 7, 5, 28, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1 },
{ 49, 0, 6, 33, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 },
{ 38, 0, 0, 38, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 }, // 1940
{ 26, 6, 2, 44, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0 },
{ 45, 0, 3, 49, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 },
{ 35, 0, 4, 54, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 },
{ 24, 4, 5, 59, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1 }, // 1944
{ 43, 0, 0, 5, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1 },
{ 32, 0, 1, 10, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1 },
{ 21, 2, 2, 15, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 },
{ 40, 0, 3, 20, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 }, // 1948
{ 28, 7, 5, 26, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 },
{ 47, 0, 6, 31, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1 },
{ 36, 0, 0, 36, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 },
{ 26, 5, 1, 41, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 }, // 1952
{ 44, 0, 3, 47, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1 },
{ 33, 0, 4, 52, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0 },
{ 23, 3, 5, 57, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1 },
{ 42, 0, 6, 2, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1 }, // 1956
{ 30, 8, 1, 8, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0 },
{ 48, 0, 2, 13, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0 },
{ 38, 0, 3, 18, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 },
{ 27, 6, 4, 23, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 }, // 1960
{ 45, 0, 6, 29, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0 },
{ 35, 0, 0, 34, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 },
{ 24, 4, 1, 39, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 },
{ 43, 0, 2, 44, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 }, // 1964
{ 32, 0, 4, 50, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1 },
{ 20, 3, 5, 55, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 },
{ 39, 0, 6, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0 },
{ 29, 7, 0, 5, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 }, // 1968
{ 47, 0, 2, 11, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 },
{ 36, 0, 3, 16, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0 },
{ 26, 5, 4, 21, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1 },
{ 45, 0, 5, 26, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1 }, // 1972
{ 33, 0, 0, 32, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1 },
{ 22, 4, 1, 37, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1 },
{ 41, 0, 2, 42, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1 },
{ 30, 8, 3, 47, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1 }, // 1976
{ 48, 0, 5, 53, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1 },
{ 37, 0, 6, 58, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 },
{ 27, 6, 0, 3, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0 },
{ 46, 0, 1, 8, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0 }, // 1980
{ 35, 0, 3, 14, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1 },
{ 24, 4, 4, 19, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1 },
{ 43, 0, 5, 24, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1 },
{ 32, 10,6, 29, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1 }, // 1984
{ 50, 0, 1, 35, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0 },
{ 39, 0, 2, 40, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1 },
{ 28, 6, 3, 45, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0 },
{ 47, 0, 4, 50, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 }, // 1988
{ 36, 0, 6, 56, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0 },
{ 26, 5, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1 },
{ 45, 0, 1, 6, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0 },
{ 34, 0, 2, 11, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0 }, // 1992
{ 22, 3, 4, 17, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0 },
{ 40, 0, 5, 22, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0 },
{ 30, 8, 6, 27, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1 },
{ 49, 0, 0, 32, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1 }, // 1996
{ 37, 0, 2, 38, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 },
{ 27, 5, 3, 43, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1 },
{ 46, 0, 4, 48, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1 },
{ 35, 0, 5, 53, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1 }, // 2000
{ 23, 4, 0, 59, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 },
{ 42, 0, 1, 4, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 },
{ 31, 0, 2, 9, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0 },
{ 21, 2, 3, 14, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 }, // 2004
{ 39, 0, 5, 20, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 },
{ 28, 7, 6, 25, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1 },
{ 48, 0, 0, 30, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1 },
{ 37, 0, 1, 35, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1 }, // 2008
{ 25, 5, 3, 41, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 },
{ 44, 0, 4, 46, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 },
{ 33, 0, 5, 51, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 },
{ 22, 4, 6, 56, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, // 2012
{ 40, 0, 1, 2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 },
{ 30, 9, 2, 7, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 },
{ 49, 0, 3, 12, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1 },
{ 38, 0, 4, 17, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0 }, // 2016
{ 27, 6, 6, 23, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1 },
{ 46, 0, 0, 28, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0 },
{ 35, 0, 1, 33, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 },
{ 24, 4, 2, 38, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 }, // 2020
{ 42, 0, 4, 44, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 },
{ 31, 0, 5, 49, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 },
{ 21, 2, 6, 54, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 },
{ 40, 0, 0, 59, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 }, // 2024
{ 28, 6, 2, 5, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 },
{ 47, 0, 3, 10, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1 },
{ 36, 0, 4, 15, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1 },
{ 25, 5, 5, 20, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 }, // 2028
{ 43, 0, 0, 26, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1 },
{ 32, 0, 1, 31, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0 },
{ 22, 3, 2, 36, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0 } };
int leap, d, sm, y, im, l1, l2, acc, i, lm, kc;
int solaryear,solarmonth,solardate;
int lunaryear,lunarmonth,lunardate,weekday,kan,chih;
U16 tmp[10];
U16 smp[10];
U16 rmp[10];
U16 omp[10];
U16 pmp[10];
U16 qmp[10];
U16 year[1],month[1],date[1];
solaryear=2004;
solarmonth=6;
solardate=15;
/*year[0]=pYearTextCtrl->text[0];
solaryear=Unicode2Int(year[0]);
month[0]=pMonthTextCtrl->text[0];
solarmonth=Unicode2Int(month[0]);
date[0]=pDayTextCtrl->text[0];
solardate=Unicode2Int(date[0]);*/
/*solaryear=Unicode2Int(pYearTextCtrl->text[0]);
solarmonth=Unicode2Int(pMonthTextCtrl->text[0]);
solardate=Unicode2Int(pDayTextCtrl->text[0]);*/
sm=solarmonth-1;
if ( solaryear % 400 == 0 )
leap=1;
else if ( solaryear % 100 == 0 )
leap=0;
else if ( solaryear % 4 == 0 )
leap=1;
else
leap=0;
if ( sm == 1 )
d = leap + 28;
else
d = solarcal[sm];
y = solaryear - firstyear;
acc = solardays[leap][sm] + solardate;
weekday = ( acc + lunarcal[y].baseweekday ) % 7;
kc = acc + lunarcal[y].basekanchih;
chih = kc % 12;
Int2Unicode(weekday,smp);
SetTextCtrlText(pTimeZoneTextCtrl59, smp,TRUE);
kan = kc % 10;
Int2Unicode(kan,pmp);
SetTextCtrlText(pTimeZoneTextCtrl61, pmp,TRUE);
chih = kc % 12;
Int2Unicode(chih,qmp);
SetTextCtrlText(pTimeZoneTextCtrl62, qmp,TRUE);
if ( acc <= lunarcal[y].basedays )
{
y--;
lunaryear = solaryear - 1;
if ( lunaryear % 400 == 0 )
leap=1;
else if ( lunaryear % 100 == 0 )
leap=0;
else if ( lunaryear % 4 == 0 )
leap=1;
else
leap=0;
sm += 12;
acc = solardays[leap][sm] + solardate;
}
else
lunaryear = solaryear;
l1 = lunarcal[y].basedays;
Int2Unicode(lunaryear,tmp);
SetTextCtrlText(pTimeZoneTextCtrl52, tmp,TRUE);
for ( i=0; i<13; i++ )
{
l2 = l1 + lunarcal[y].monthdays[i] + 29;
if ( acc <= l2 )
break;
l1 = l2;
}
lunarmonth = i + 1;
lunardate = acc - l1;
im = lunarcal[y].intercalation;
if ( im != 0 && lunarmonth > im )
{
lunarmonth--;
if ( lunarmonth == im )
lunarmonth = -im;
}
if ( lunarmonth > 12 )
lunarmonth -= 12;
Int2Unicode(lunarmonth,rmp);
SetTextCtrlText(pTimeZoneTextCtrl54, rmp,TRUE);
Int2Unicode(lunardate,omp);
SetTextCtrlText(pTimeZoneTextCtrl56, omp,TRUE);
}
void CreateSetTimeArea(U8 IsShow)
{
static char TimeKeyTable[]={'1','2','3',0,'4','5','6',0,'7','8','9',0,':','0','\b',0};
U16 strtime[11]={0,};
structRECT rect;
SetRect(&rect, 95,180,184,200); //创建日期文本框
pDateTextCtrl=CreateTextCtrl(ID_SetDate_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,NULL,NULL);
Rtc_Format("20%Y.%M.%D",strtime);
SetTextCtrlText(pDateTextCtrl, strtime,IsShow);
SetRect(&rect, 185,180,275,200);//创建时间文本框
pTimeTextCtrl=CreateTextCtrl(ID_SetTime_TextCtrl, &rect, FONTSIZE_MIDDLE, CTRL_STYLE_FRAME,TimeKeyTable,NULL);
Rtc_Format("%H:%I:%S",strtime);
SetTextCtrlText(pTimeTextCtrl, strtime,IsShow);
SetRect(&rect, 280,180,315,200); // 确定按钮
pButtonCtrl5=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,B,NULL);
DrawButton(pButtonCtrl5);
SetRect(&rect, 280,200,315,219); // 取消按钮
pButtonCtrl6=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,C,NULL);
DrawButton(pButtonCtrl6);
SetTimeStatus=STStatus_SetSelect;
}
void CreateCheckTimeArea(U8 IsShow)
{
static char TimeKeyTable[]={'1','2','3',0,'4','5','6',0,'7','8','9',0,':','0','\b',0};
U16 strtime[11]={0,};
structRECT rect;
SetRect(&rect, 90,180,119,200); //创建年份文本框
pYearTextCtrl=CreateTextCtrl(ID_SetYear_TextCtrl, &rect, FONTSIZE_SMALL, CTRL_STYLE_FRAME,NULL,NULL);
/*Rtc_Format("20%Y",strtime);
SetTextCtrlText(pYearTextCtrl, strtime,IsShow);*/
SetRect(&rect, 120,180,149,200); //创建月份文本框
pMonthTextCtrl=CreateTextCtrl(ID_SetMonth_TextCtrl, &rect, FONTSIZE_SMALL, CTRL_STYLE_FRAME,NULL,NULL);
/*Rtc_Format("%M",strtime);
SetTextCtrlText(pMonthTextCtrl, strtime,IsShow);*/
SetRect(&rect, 150,180,179,200); //创建号文本框
pDayTextCtrl=CreateTextCtrl(ID_SetDay_TextCtrl, &rect, FONTSIZE_SMALL, CTRL_STYLE_FRAME,NULL,NULL);
/*Rtc_Format("%D",strtime);
SetTextCtrlText(pDayTextCtrl, strtime,IsShow);*/
SetRect(&rect, 280,180,315,200); // 确定按钮
pButtonCtrl5=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,B,NULL);
DrawButton(pButtonCtrl5);
SetRect(&rect, 280,200,315,219); // 取消按钮
pButtonCtrl6=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,C,NULL);
DrawButton(pButtonCtrl6);
SetRect(&rect, 90,200,119,219); // 创建改变大向上按钮
pButtonCtrl1=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,D,NULL);
DrawButton(pButtonCtrl1);
SetRect(&rect, 160,200,190,219); // 创建改变大向下按钮
pButtonCtrl2=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,A,NULL);
DrawButton(pButtonCtrl2);
SetRect(&rect, 120,200,139,219); // 创建改变小向上按钮
pButtonCtrl3=CreateButton(ID_MainButtonCtrl,&rect,FONTSIZE_MIDDLE,CTRL_STYLE_3DUPFRAME,E,NULL);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -