📄 dialogs.c
字号:
SetBkMode((HDC)wParam,TRANSPARENT);
case CTLCOLOR_DLG:
return hDlgBkgrnd;
}
return true;
#endif
case WM_COMMAND:
if (HIWORD(wParam)==CBN_EDITCHANGE||HIWORD(wParam)==CBN_SELCHANGE)
/*if these messages are processed here, the GetDlgItemInt
function will retrieve the old value, not the new one*/
PostMessage(hDlg,WM_USER+100,wParam,0);
else switch (LOWORD(wParam))
{
case IDOK:
for (i=0;i<3;i++)
{
XCmoves[i]=GetDlgItemInt (hDlg, IDC_MOVES1+i, &ok, false);
XCminutes[i]=GetDlgItemInt (hDlg, IDC_MINS1+i, &ok, false);
}
XC=0;
for (i=0;i<3;i++)
{
if (XCmoves[i] && XCminutes[i])XC++;
else break;
}
if (!XC)
{
MaxResponseTime=GetDlgItemInt (hDlg, IDC_MAXRT,
&ok, false)*100;
if (!MaxResponseTime)
MaxResponseTime=600;
SetTimeControl();
EndDialog(hDlg,true);
}
else
{
XCmore=0;
TimeControl.clock[white] = TimeControl.clock[black] = 0;
SetTimeControl();
EndDialog ( hDlg, true);
}
return true;
case IDCANCEL:
EndDialog ( hDlg, false);
return true;
}
case WM_USER+100:
switch(LOWORD(wParam))
{
case IDC_MOVES1:
case IDC_MINS1:
tXCmoves=GetDlgItemInt(hDlg,IDC_MOVES1,&ok,false);
tXCminutes=GetDlgItemInt(hDlg,IDC_MINS1,&ok,false);
if (!tXCmoves || !tXCminutes)ok=false;
else ok=true;
EnableWindow(GetDlgItem(hDlg, IDC_MAXRT),!ok);
EnableWindow(GetDlgItem(hDlg, IDC_MRTEXT),!ok);
EnableWindow(GetDlgItem(hDlg, IDC_MRSECS),!ok);
EnableWindow(GetDlgItem(hDlg, IDC_MOVES2),ok);
EnableWindow(GetDlgItem(hDlg, IDC_MINS2),ok);
if (!ok)
{
EnableWindow(GetDlgItem(hDlg, IDC_MOVES3),false);
EnableWindow(GetDlgItem(hDlg, IDC_MINS3),false);
break;
}
case IDC_MOVES2:
case IDC_MINS2:
tXCmoves=GetDlgItemInt(hDlg,IDC_MOVES2,&ok,false);
tXCminutes=GetDlgItemInt(hDlg,IDC_MINS2,&ok,false);
if (!tXCmoves || !tXCminutes)ok=false;
else ok=true;
EnableWindow(GetDlgItem(hDlg, IDC_MOVES3),ok);
EnableWindow(GetDlgItem(hDlg, IDC_MINS3),ok);
break;
}
return true;
}
return false;
}
BOOL CALLBACK StatDlgProc ( HWND hDlg, UINT Message,
WPARAM wParam, LPARAM lParam)
{
switch (Message)
{
case WM_INITDIALOG:
return (true);
#ifdef WIN32
case WM_CTLCOLORBTN:
case WM_CTLCOLORSTATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case WM_CTLCOLORDLG:
return hDlgBkgrnd;
#else
case WM_CTLCOLOR:
switch(HIWORD(lParam))
{
case CTLCOLOR_BTN:
case CTLCOLOR_STATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case CTLCOLOR_DLG:
return hDlgBkgrnd;
}
return true;
#endif
case WM_COMMAND:
if (LOWORD(wParam)==IDOK)
{
destroy:
DestroyWindow(hDlg);
flag.post=false;
return true;
}
break;
case WM_SYSCOMMAND:
if ((wParam & 0xFFF0) == SC_CLOSE) goto destroy;
break;
}
return (false); /* Didn't process a message */
}
BOOL CALLBACK TypeMoveDlgProc (HWND hDlg, UINT Message,
WPARAM wParam, LPARAM lParam)
{
switch (Message)
{
case WM_INITDIALOG:
SetWindowText(hDlg,szAppName);
SetDlgItemText(hDlg, IDC_PROMPT, CP[42]);
SendMessage ( GetDlgItem(hDlg, IDC_NUM), EM_LIMITTEXT, 5, 0);
return true;
#ifdef WIN32
case WM_CTLCOLORSTATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case WM_CTLCOLORDLG:
return hDlgBkgrnd;
#else
case WM_CTLCOLOR:
switch(HIWORD(lParam))
{
case CTLCOLOR_STATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case CTLCOLOR_DLG:
return hDlgBkgrnd;
}
return true;
#endif
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
if (GetDlgItemText ( hDlg, IDC_NUM, move, 6))
{
EndDialog (hDlg, true);
break;
}
case IDCANCEL:
EndDialog (hDlg, false);
break;
default: return false;
}
return true;
}
return false;
}
BOOL CALLBACK PromoteDlgProc ( HWND hDlg, UINT Message,
WPARAM wParam, LPARAM lParam)
{
switch (Message)
{
case WM_INITDIALOG:
SetWindowText(hDlg,CP[66]);
DlgInt1 = 5;
CheckRadioButton ( hDlg, 101, 104, 104);
return true;
#ifdef WIN32
case WM_CTLCOLORBTN:
case WM_CTLCOLORSTATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case WM_CTLCOLORDLG:
return hDlgBkgrnd;
#else
case WM_CTLCOLOR:
switch(HIWORD(lParam))
{
case CTLCOLOR_BTN:
case CTLCOLOR_STATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case CTLCOLOR_DLG:
return hDlgBkgrnd;
}
return true;
#endif
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
EndDialog ( hDlg, DlgInt1);
return true;
case 101:
case 102:
case 103:
case 104:
DlgInt1 = wParam-99;
CheckRadioButton ( hDlg, 101, 104, LOWORD(wParam));
return true;
}
}
return (false); /* Didn't process a message */
}
BOOL CALLBACK CreateHashDlgProc (HWND hDlg, UINT Message,
WPARAM wParam, LPARAM lParam)
{
char szsize[7];
switch ( Message )
{
case WM_INITDIALOG:
SetWindowText(hDlg,CP[67]);
SetDlgItemText (hDlg, IDC_PROMPT, CP[68]);
SendDlgItemMessage(hDlg,IDC_HFSIZE,EM_LIMITTEXT,6,0);
return true;
#ifdef WIN32
case WM_CTLCOLORSTATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case WM_CTLCOLORDLG:
return hDlgBkgrnd;
#else
case WM_CTLCOLOR:
switch(HIWORD(lParam))
{
case CTLCOLOR_STATIC:
SetBkMode((HDC)wParam,TRANSPARENT);
case CTLCOLOR_DLG:
return hDlgBkgrnd;
}
return true;
#endif
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
GetDlgItemText (hDlg,IDC_HFSIZE,szsize,7);
size = strtol (szsize,0,10);
EndDialog ( hDlg, true);
return true;
case IDCANCEL:
EndDialog ( hDlg, false);
return true;
}
}
return false;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -