📄 configtool.c
字号:
{
ctrl_tool_id=ct_id_up[ctrl_tool_id-CTEDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
}
if(id==KEY_DOWN)
{
SendDlgItemMessage(hDlg, TOOL_CT_DOWN, MSG_LBUTTONUP, 0,0);
if(flag_entered)//按过ENTER后选择BOX里面内容
{
SendDlgItemMessage(hDlg,ctrl_tool_id,MSG_KEYDOWN,SCANCODE_PAGEDOWN,0);
// num=SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCOUNT,0,0);
// box_index
box_index++;if(box_index==num)box_index=0;
SendDlgItemMessage(hDlg,ctrl_tool_id,CB_SETCURSEL,box_index,0);
}
else
{
ctrl_tool_id=ct_id_down[ctrl_tool_id-CTEDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
}
if(id==KEY_ENTER)
{
SendDlgItemMessage(hDlg, TOOL_CT_ENTER, MSG_LBUTTONUP, 0,0);
if(flag_entered)
{
flag_entered=0;
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
else
{
SendDlgItemMessage(hDlg,ctrl_tool_id,MSG_KEYDOWN,SCANCODE_PAGEDOWN,0);
flag_entered=1;
box_index==SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCURSEL,0,0);
num=SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCOUNT,0,0);
}
}
if(id==SCANCODE_F3)
{
SendDlgItemMessage(hDlg, TOOL_CT_DLEFT, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_CT_DLEFT,0);
}
if(id==SCANCODE_F4)
{
SendDlgItemMessage(hDlg, TOOL_CT_DRIGHT, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_CT_DRIGHT,0);
}
if(id==SCANCODE_F5)
{SendDlgItemMessage(hDlg, TOOL_CT_TIMER, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_CT_TIMER,0);
}
if(id==SCANCODE_F6)
{SendDlgItemMessage(hDlg, TOOL_CT_COUNTER, BM_SETSTATE , 0 ,0);
}
if(id==SCANCODE_F7)
{SendDlgItemMessage(hDlg, TOOL_CT_ADD, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_CT_ADD,0);
}
}
break;
case MSG_COMMAND:
{
int id ;
id= LOWORD (wParam);
if(id==TOOL_CT_TIMER)
{
if(!bt_dlg) DlgConfToolTimer( hDlg);
else {bc_dlg=0;EndDialog (hDlg, 0);}
}
if(id==TOOL_CT_ADD)
{
if(!ba_dlg) DlgConfAdd( hDlg);
else {bc_dlg=0;EndDialog (hDlg, 0);}
}
if(id==TOOL_CT_DBACK) EndDialog (hDlg, 0);
if(id==TOOL_CT_DRIGHT)
{
SendMessage(GetDlgItem(hDlg,ct_bn_focus), BM_SETSTATE , 0 ,0);
ct_bn_focus++;
if(ct_bn_focus>CT_BN6)ct_bn_focus=CT_BN1;
SendMessage(GetDlgItem(hDlg,ct_bn_focus), BM_SETSTATE , BST_PUSHED ,0);
}
if(id==TOOL_CT_DLEFT)
{
SendMessage(GetDlgItem(hDlg,ct_bn_focus), BM_SETSTATE , 0 ,0);
ct_bn_focus --;
if(ct_bn_focus <CT_BN1 ) ct_bn_focus =CT_BN6;
SendDlgItemMessage(hDlg, ct_bn_focus, BM_SETSTATE , BST_PUSHED ,0);
}
}
break;
}
return DefaultDialogProc (hDlg, message, wParam, lParam);
}
void DlgConfCounter (HWND hWnd)
{
bc_dlg=1;
DlgToolCounter.controls = ctrl_tool_counter;
DialogBoxIndirectParam (&DlgToolCounter, hWnd, ToolCounterDialogProc, 0L);
}
void ConfAddInit(HWND hDlg)
{
int i;
unsigned char str[10];
int channel_num;
const unsigned char *counter_type_init[]={
"HH","H","L","LL","No"
};
const unsigned char *add_interval[]={
"秒","分","小时"
};
const unsigned char *add_dot[]={
"1","2","3"
};
SetDlgItemText(hDlg, ADD_EDIT_NAME,"Tolz1" );
SetDlgItemText(hDlg, ADD_EDIT_TAG,"累加器1" );
SetDlgItemText(hDlg, ADD_EDIT_UNIT,"默认" );
SetDlgItemText(hDlg, ADD_EDIT_DEFA,"0" );
SetDlgItemText(hDlg, ADD_EDIT1_SET,"100" );
SetDlgItemText(hDlg, ADD_EDIT2_SET,"100" );
channel_num=16;
for (i=0;i<channel_num;i++){
sprintf(str,"AI%d",i);
SendDlgItemMessage(hDlg,ADD_BOX_FROM,CB_ADDSTRING,0,(LPARAM)str);
}
for (i=0;i<2;i++){
SendDlgItemMessage(hDlg,ADD_BOX_FUNC,CB_ADDSTRING,0,(LPARAM)func_init[i]);
}
for (i=0;i<3;i++){
SendDlgItemMessage(hDlg,ADD_BOX_DOT,CB_ADDSTRING,0,(LPARAM)add_dot[i]);
}
for (i=0;i<3;i++){
SendDlgItemMessage(hDlg,ADD_BOX_TIME,CB_ADDSTRING,0,(LPARAM)add_interval[i]);
}
for (i=0;i<5;i++){
SendDlgItemMessage(hDlg,ADD_BOX1_TYPE,CB_ADDSTRING,0,(LPARAM)counter_type_init[i]);
}
for (i=0;i<5;i++){
SendDlgItemMessage(hDlg,ADD_BOX2_TYPE,CB_ADDSTRING,0,(LPARAM)counter_type_init[i]);
}
for (i=0;i<5;i++){
SendDlgItemMessage(hDlg,ADD_BOX1_JOB1,CB_ADDSTRING,0,(LPARAM)tool_job1[i]);
}
for (i=0;i<5;i++){
SendDlgItemMessage(hDlg,ADD_BOX1_JOB2,CB_ADDSTRING,0,(LPARAM)tool_job2[i]);
}
for (i=0;i<7;i++){
SendDlgItemMessage(hDlg,ADD_BOX2_JOB1,CB_ADDSTRING,0,(LPARAM)tool_job1[i]);
}
for (i=0;i<7;i++){
SendDlgItemMessage(hDlg,ADD_BOX2_JOB2,CB_ADDSTRING,0,(LPARAM)tool_job2[i]);
}
}
int ToolAddDialogProc (HWND hDlg, int message, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
int id;
int nc;
static int add_bn_focus;
static int ctrl_tool_id;
static int box_index;//下拉框选中项
static int num ;//下拉框总选项数目
static BOOL flag_entered;
id= LOWORD (wParam);//控件编号
nc=HIWORD(wParam); //控件通知码
switch (message)
{
case MSG_INITDIALOG:
ctrl_tool_id=ADD_EDIT_NAME;
box_index=1;
ConfAddInit(hDlg);
add_bn_focus=CT_BN1;
return 1;
case MSG_SHOWWINDOW:
{
}
break;
case MSG_PAINT:
hdc=BeginPaint(hDlg);
SetBrushColor(hdc,PIXEL_black);
SetPenColor (hdc,COLOR_darkgray);
SelectFont(hdc,songgb16font);
SetTextColor(hdc,PIXEL_black);
SetBkColor(hdc,PIXEL_lightgray);
TextOut(hdc, ADD_X1,ADD_Y5+5, "1");
TextOut(hdc, ADD_X1,ADD_Y6+5, "2");
EndPaint(hDlg,hdc);
break;
case MSG_KEYDOWN:
if(id==KEY_LEFT)SendDlgItemMessage(hDlg, TOOL_ADD_LEFT, MSG_LBUTTONDOWN, 0,0);
if(id==KEY_RIGHT)SendDlgItemMessage(hDlg, TOOL_ADD_RIGHT, MSG_LBUTTONDOWN, 0,0);
if(id==KEY_UP)SendDlgItemMessage(hDlg, TOOL_ADD_UP, MSG_LBUTTONDOWN, 0,0);
if(id==KEY_DOWN)SendDlgItemMessage(hDlg, TOOL_ADD_DOWN, MSG_LBUTTONDOWN, 0,0);
if(id==KEY_ENTER)SendDlgItemMessage(hDlg, TOOL_ADD_ENTER, MSG_LBUTTONDOWN, 0,0);
if(id==SCANCODE_F3)SendDlgItemMessage(hDlg, TOOL_ADD_DLEFT, BM_SETSTATE , BST_PUSHED ,0);
if(id==SCANCODE_F4)
SendDlgItemMessage(hDlg, TOOL_ADD_DRIGHT, BM_SETSTATE , BST_PUSHED ,0);
if(id==SCANCODE_F5)SendDlgItemMessage(hDlg, TOOL_ADD_TIMER, BM_SETSTATE , BST_PUSHED ,0);
if(id==SCANCODE_F6)
SendDlgItemMessage(hDlg, TOOL_ADD_COUNTER, BM_SETSTATE , BST_PUSHED ,0);
if(id==SCANCODE_F7)SendDlgItemMessage(hDlg, TOOL_ADD_ADD, BM_SETSTATE , BST_PUSHED ,0);
break;
case MSG_KEYUP:
{
if(id==KEY_EXIT) EndDialog (hDlg, 0);
if(id==SCANCODE_F1) EndDialog (hDlg, 0);
if(id==KEY_LEFT)
{
SendDlgItemMessage(hDlg, TOOL_ADD_LEFT, MSG_LBUTTONUP, 0,0);
ctrl_tool_id=add_id_left[ctrl_tool_id-ADD_EDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
if(id==KEY_RIGHT)
{
SendDlgItemMessage(hDlg, TOOL_ADD_RIGHT, MSG_LBUTTONUP, 0,0);
ctrl_tool_id=add_id_right[ctrl_tool_id-ADD_EDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
if(id==KEY_UP)
{
SendDlgItemMessage(hDlg, TOOL_ADD_UP, MSG_LBUTTONUP, 0,0);
if(flag_entered)//按过ENTER后选择BOX里面内容
{
SendDlgItemMessage(hDlg,ctrl_tool_id,MSG_KEYDOWN,SCANCODE_PAGEDOWN,0);
// box_index=SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCURSEL,0,0);
box_index--;if(box_index<1)box_index=num-1;
SendDlgItemMessage(hDlg,ctrl_tool_id,CB_SETCURSEL,box_index,0);
}
else
{
ctrl_tool_id=add_id_up[ctrl_tool_id-ADD_EDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
}
if(id==KEY_DOWN)
{
SendDlgItemMessage(hDlg, TOOL_ADD_DOWN, MSG_LBUTTONUP, 0,0);
if(flag_entered)//按过ENTER后选择BOX里面内容
{
SendDlgItemMessage(hDlg,ctrl_tool_id,MSG_KEYDOWN,SCANCODE_PAGEDOWN,0);
box_index++;if(box_index==num)box_index=0;
SendDlgItemMessage(hDlg,ctrl_tool_id,CB_SETCURSEL,box_index,0);
}
else
{
ctrl_tool_id=add_id_down[ctrl_tool_id-ADD_EDIT_NAME];
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
}
if(id==KEY_ENTER)
{
SendDlgItemMessage(hDlg, TOOL_ADD_ENTER, MSG_LBUTTONUP, 0,0);
if(flag_entered)
{
flag_entered=0;
SetFocusChild( GetDlgItem(hDlg,ctrl_tool_id));
}
else
{
SendDlgItemMessage(hDlg,ctrl_tool_id,MSG_KEYDOWN,SCANCODE_PAGEDOWN,0);
flag_entered=1;
num=SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCOUNT,0,0);
box_index=SendDlgItemMessage(hDlg,ctrl_tool_id,CB_GETCURSEL,0,0);
}
}
if(id==SCANCODE_F3)
{
SendDlgItemMessage(hDlg, TOOL_ADD_DLEFT, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_ADD_DLEFT,0);
}
if(id==SCANCODE_F4)
{
SendDlgItemMessage(hDlg, TOOL_ADD_DRIGHT, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_ADD_DRIGHT,0);
}
if(id==SCANCODE_F5)
SendDlgItemMessage(hDlg, TOOL_ADD_TIMER, BM_SETSTATE , 0 ,0);
if(id==SCANCODE_F6)
{SendDlgItemMessage(hDlg, TOOL_ADD_COUNTER, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_ADD_COUNTER,0);
}
if(id==SCANCODE_F7)
{SendDlgItemMessage(hDlg, TOOL_ADD_ADD, BM_SETSTATE , 0 ,0);
SendMessage(hDlg,MSG_COMMAND,TOOL_ADD_ADD,0);
}
}
break;
case MSG_COMMAND:
{
int id ;
id= LOWORD (wParam);
if(id==TOOL_TIMER_TIMER)
{
if(!bt_dlg) DlgConfToolTimer( hDlg);
else {ba_dlg=0;EndDialog (hDlg, 0);}
}
if(id==TOOL_TIMER_COUNTER) {
if(!bc_dlg) DlgConfCounter( hDlg);
else {ba_dlg=0;EndDialog (hDlg, 0);}
}
if(id==TOOL_ADD_DBACK)
{EndDialog (hDlg, 0);
ba_dlg=0;
}
if(id==TOOL_ADD_DRIGHT)
{
SendMessage(GetDlgItem(hDlg,add_bn_focus), BM_SETSTATE , 0 ,0);
add_bn_focus++;
if(add_bn_focus>ADD_BN6)add_bn_focus=ADD_BN1;
SendMessage(GetDlgItem(hDlg,add_bn_focus), BM_SETSTATE , BST_PUSHED ,0);
}
if(id==TOOL_ADD_DLEFT)
{
SendMessage(GetDlgItem(hDlg,add_bn_focus), BM_SETSTATE , 0 ,0);
add_bn_focus --;
if(add_bn_focus <ADD_BN1 ) add_bn_focus =ADD_BN6;
SendDlgItemMessage(hDlg, add_bn_focus, BM_SETSTATE , BST_PUSHED ,0);
}
}
break;
case MSG_DESTROY:
ba_dlg=0;
break;
}
return DefaultDialogProc (hDlg, message, wParam, lParam);
}
//_累积页面对话框
void DlgConfAdd (HWND hWnd)
{ba_dlg=1;
DlgToolAdd.controls = ctrl_tool_add; //_Add 表示累积页面
DialogBoxIndirectParam (&DlgToolAdd, hWnd, ToolAddDialogProc, 0L);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -