📄 cdadint.c
字号:
case WM_COMMAND :
switch (LOWORD(wParam))
{
case IDOK :
case IDCANCEL :
EndDialog(hDlg, 0);
return TRUE;
case IDC_CHL0 :
case IDC_CHL1 :
case IDC_CHL2 :
case IDC_CHL3 :
case IDC_CHL4 :
case IDC_CHL5 :
case IDC_CHL6 :
case IDC_CHL7 :
case IDC_CHL8 :
case IDC_CHL9 :
case IDC_CHL10 :
case IDC_CHL11 :
case IDC_CHL12 :
case IDC_CHL13 :
case IDC_CHL14 :
case IDC_CHL15 :
if (HIWORD(wParam) == CBN_KILLFOCUS)
{
i = (int)SendDlgItemMessage(hDlg, LOWORD(wParam),
CB_GETCURSEL, 0, 0) ;
if (i != CB_ERR)
gwGain[((USHORT)LOWORD(wParam)) - IDC_CHL0] = i;
}
return TRUE;
}
break;
}
return FALSE ;
}
/***************************************************************************
FUNCTION: CondListDlgProc(HWND, unsigned, WPARAM, LPARAM)
PURPOSE: Processes dialog box messages for condition list
****************************************************************************/
BOOL FTYPE CondListDlgProc(hDlg, message, wParam, lParam)
HWND hDlg; /* window handle */
unsigned message; /* type of message */
WPARAM wParam; /* additional information */
LPARAM lParam; /* additional information */
{
int i, j;
switch (message)
{
case WM_INITDIALOG :
// Initialize condition/channel
for (i = 0; i < 16; i ++)
EnableWindow(GetDlgItem(hDlg, IDC_CONDCHL0 + i), FALSE);
for(i = gwStartChl; i < (gwNumChl+gwStartChl) ; i ++)
{
EnableWindow(GetDlgItem(hDlg, IDC_CONDCHL0 + i), TRUE);
for (j = 0; j < 5; j ++)
SendDlgItemMessage(hDlg, IDC_CONDCHL0+i, CB_ADDSTRING, 0,
(LPARAM)((LPSTR)szCondString[j]));
SendDlgItemMessage(hDlg, IDC_CONDCHL0+i, CB_SELECTSTRING,
(WPARAM)(-1),
(LPARAM)((LPSTR)(szCondString[gwCond[i]])));
}
return TRUE;
case WM_COMMAND :
switch (LOWORD(wParam))
{
case IDOK :
case IDCANCEL :
EndDialog(hDlg, 0);
return TRUE;
case IDC_CONDCHL0 :
case IDC_CONDCHL1 :
case IDC_CONDCHL2 :
case IDC_CONDCHL3 :
case IDC_CONDCHL4 :
case IDC_CONDCHL5 :
case IDC_CONDCHL6 :
case IDC_CONDCHL7 :
case IDC_CONDCHL8 :
case IDC_CONDCHL9 :
case IDC_CONDCHL10 :
case IDC_CONDCHL11 :
case IDC_CONDCHL12 :
case IDC_CONDCHL13 :
case IDC_CONDCHL14 :
case IDC_CONDCHL15 :
if (HIWORD(wParam) == CBN_KILLFOCUS)
{
i = (int)SendDlgItemMessage(hDlg, (int)(LOWORD(wParam)),
CB_GETCURSEL, 0, 0) ;
if (i != CB_ERR)
gwCond[(int)(LOWORD(wParam)) - IDC_CONDCHL0]= (unsigned)i;
}
return TRUE;
}
break;
}
return FALSE ;
}
/***************************************************************************
FUNCTION: LevelListDlgProc(HWND, unsigned, WPARAM, LPARAM)
PURPOSE: Processes dialog box messages for level list
****************************************************************************/
BOOL FTYPE LevelListDlgProc(hDlg, message, wParam, lParam)
HWND hDlg; /* window handle */
unsigned message; /* type of message */
WPARAM wParam; /* additional information */
LPARAM lParam; /* additional information */
{
USHORT i;
switch (message)
{
case WM_INITDIALOG :
// Initialize level/channel
for (i = 0; i < 16; i ++)
{
EnableWindow(GetDlgItem(hDlg, IDC_HIGHCHL0 + i), FALSE);
EnableWindow(GetDlgItem(hDlg, IDC_LOWCHL0 + i), FALSE);
}
for(i = gwStartChl; i < (gwNumChl+gwStartChl); i ++)
{
EnableWindow(GetDlgItem(hDlg, IDC_HIGHCHL0 + i), TRUE);
EnableWindow(GetDlgItem(hDlg, IDC_LOWCHL0 + i), TRUE);
sprintf(szBuffer, "%6.2f", gfLevel[i].fHigh);
SendDlgItemMessage(hDlg, IDC_HIGHCHL0+i, EM_REPLACESEL, 0,
(LPARAM)((LPSTR)szBuffer));
sprintf(szBuffer, "%6.2f", gfLevel[i].fLow);
SendDlgItemMessage(hDlg, IDC_LOWCHL0+i, EM_REPLACESEL, 0,
(LPARAM)((LPSTR)szBuffer));
}
return TRUE;
case WM_COMMAND :
switch (LOWORD(wParam))
{
case IDOK :
case IDCANCEL :
EndDialog(hDlg, 0);
return TRUE;
case IDC_HIGHCHL0 :
case IDC_HIGHCHL1 :
case IDC_HIGHCHL2 :
case IDC_HIGHCHL3 :
case IDC_HIGHCHL4 :
case IDC_HIGHCHL5 :
case IDC_HIGHCHL6 :
case IDC_HIGHCHL7 :
case IDC_HIGHCHL8 :
case IDC_HIGHCHL9 :
case IDC_HIGHCHL10 :
case IDC_HIGHCHL11 :
case IDC_HIGHCHL12 :
case IDC_HIGHCHL13 :
case IDC_HIGHCHL14 :
case IDC_HIGHCHL15 :
if (HIWORD(wParam) == EN_KILLFOCUS)
{
if(SendDlgItemMessage(hDlg, (int)(LOWORD(wParam)),
EM_GETMODIFY, 0, 0))
{
SendDlgItemMessage(hDlg, (int)(LOWORD(wParam)),
WM_GETTEXT, 10, (LPARAM)(LPSTR)szBuffer) ;
gfLevel[(int)(LOWORD(wParam)) - IDC_HIGHCHL0].fHigh
= (float)atof(szBuffer);
SendDlgItemMessage(hDlg, (int)wParam,
EM_SETMODIFY, FALSE, 0) ;
}
}
return TRUE;
case IDC_LOWCHL0 :
case IDC_LOWCHL1 :
case IDC_LOWCHL2 :
case IDC_LOWCHL3 :
case IDC_LOWCHL4 :
case IDC_LOWCHL5 :
case IDC_LOWCHL6 :
case IDC_LOWCHL7 :
case IDC_LOWCHL8 :
case IDC_LOWCHL9 :
case IDC_LOWCHL10 :
case IDC_LOWCHL11 :
case IDC_LOWCHL12 :
case IDC_LOWCHL13 :
case IDC_LOWCHL14 :
case IDC_LOWCHL15 :
if (HIWORD(wParam) == EN_KILLFOCUS)
{
if(SendDlgItemMessage(hDlg, (int)LOWORD(wParam),
EM_GETMODIFY, 0, 0))
{
SendDlgItemMessage(hDlg, (int)LOWORD(wParam),
WM_GETTEXT, 10, (LPARAM)(LPSTR)szBuffer) ;
gfLevel[(int)(LOWORD(wParam)) - IDC_LOWCHL0].fLow
= (float)atof(szBuffer);
SendDlgItemMessage(hDlg, (int)wParam,
EM_SETMODIFY, FALSE, 0) ;
}
}
return TRUE;
}
break;
}
return FALSE ;
}
/***************************************************************************
FUNCTION: ConfigDlgProc(HWND, unsigned, WPARAM, LPARAM)
PURPOSE: Processes dialog box messages for configuration
****************************************************************************/
BOOL FTYPE ConfigDlgProc(hDlg, message, wParam, lParam)
HWND hDlg; /* window handle */
unsigned message; /* type of message */
WPARAM wParam; /* additional information */
LPARAM lParam; /* additional information */
{
int i;
switch (message)
{
case WM_INITDIALOG :
if (!gwSelectDevice)
{
// Step 1: Select Device
ErrCde = DRV_SelectDevice(hDlg, FALSE, &dwDeviceNum, szDescript);
if (ErrCde != SUCCESS)
{
DRV_GetErrorMessage(ErrCde,(LPSTR)szErrMsg);
MessageBox(hWnd,(LPCSTR)szErrMsg,"Driver Message",MB_OK);
return 0;
}
gwSelectDevice = TRUE;
}
// Show device description to Button text
SendDlgItemMessage(hDlg, IDC_DeviceSelect, WM_SETTEXT,
50, (LPARAM)(LPSTR)szDescript);
ErrCde = DRV_DeviceOpen(dwDeviceNum, (LONG far *)&DriverHandle);
if (ErrCde != SUCCESS)
{
DRV_GetErrorMessage(ErrCde,(LPSTR)szErrMsg);
MessageBox(hWnd,(LPCSTR)szErrMsg,"Device Open",MB_OK);
return 0;
}
// Step 2: Get device features
ptDevFeatures.buffer = (LPDEVFEATURES)&DevFeatures;
ptDevFeatures.size = sizeof(DEVFEATURES);
if ((ErrCde = DRV_DeviceGetFeatures(DriverHandle,
(LPT_DeviceGetFeatures)&ptDevFeatures)) != SUCCESS)
{
DRV_GetErrorMessage(ErrCde,(LPSTR)szErrMsg);
MessageBox(hWnd,(LPCSTR)szErrMsg,"Driver Message",MB_OK);
DRV_DeviceClose((LONG far *)&DriverHandle);
return 0;
}
// Step 3: Initialize Input Range List Combobox with device features
if (DevFeatures.usNumGain != 0)
{
EnableWindow(GetDlgItem(hDlg, IDC_INPRANGE), TRUE);
for (i = 0; i < (int)DevFeatures.usNumGain; i ++)
SendDlgItemMessage(hDlg, IDC_INPRANGE, CB_ADDSTRING, 0,
(LPARAM)((LPSTR)(DevFeatures.glGainList[i].szGainStr)));
SendDlgItemMessage(hDlg, IDC_INPRANGE, CB_SELECTSTRING, (WPARAM)(-1),
(LPARAM)((LPSTR)(DevFeatures.glGainList[gwGainCode].szGainStr)));
}
else
{
EnableWindow(GetDlgItem(hDlg, IDC_INPRANGE), FALSE);
SendDlgItemMessage(hDlg, IDC_INPRANGE, CB_RESETCONTENT,
0, (LPARAM)((LPSTR)0));
}
// Initialize Conversion Number
ultoa(gulConvNum, szBuffer, 10);
SendDlgItemMessage(hDlg, IDC_CONVERSION, EM_REPLACESEL, 0,
(LPARAM)((LPSTR)szBuffer));
// Initialize Pacer Rate
ltoa(gdwPacerRate, szBuffer, 10);
SendDlgItemMessage(hDlg, IDC_PACER, EM_REPLACESEL, 0,
(LPARAM)((LPSTR)szBuffer));
if (gwExtTrig)
EnableWindow(GetDlgItem(hDlg, IDC_PACER), FALSE);
else
EnableWindow(GetDlgItem(hDlg, IDC_PACER), TRUE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -