嵌入式学习小组
直播中

徐磊

7年用户 903经验值
私信 关注

窗口建立2个EDIT怎么用软键盘实现分别输入不成功,求大神指点下面是部分代码,其他部分没有错误

hEDIT0001为EDIT1句柄  hEDIT0002为EDIT2句柄   由9个按键输入值
tatic void _cbCallback(WM_MESSAGE * pMsg)
{   
    int NCode, Id;
    WM_HWIN hWin = pMsg->hWin;
    switch (pMsg->MsgId)
    {
        case WM_PAINT:
            PaintDialog04(pMsg);
            break;
        case WM_INIT_DIALOG:
            InitDialog04(pMsg);
            break;
        case WM_KEY:
            switch (((WM_KEY_INFO*)(pMsg->Data.p))->Key)
            {
                case GUI_KEY_ESCAPE:
                    GUI_EndDialog(hWin, 1);
                    break;
                case GUI_KEY_ENTER:
                    GUI_EndDialog(hWin, 0);
                    break;
            }
            break;
        case WM_NOTIFY_PARENT:
            Id = WM_GetId(pMsg->hWinSrc);
            NCode = pMsg->Data.v;        
            switch (Id)
            {
//                case GUI_ID_OK:
//                    if(NCode==WM_NOTIFICATION_RELEASED)
//                        GUI_EndDialog(hWin, 0);
//                    break;
//                case GUI_ID_CANCEL:
//                    if(NCode==WM_NOTIFICATION_RELEASED)
//                        GUI_EndDialog(hWin, 0);
//                    break;
case GUI_ID_BUTTON0:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
                             
                            break;
                        case WM_NOTIFICATION_RELEASED:
                          EDIT_SetText(hEDIT0002,NULL);//EDIT????????
EDIT_SetText(hEDIT0001,NULL);//EDIT????????

GUI_Exec1();
WM_HideWindow(HWIN4);//?????ù??????
WM_ShowWindow(HWIN3);
NUMBER3=0;
break;
}

                    break;
                case GUI_ID_BUTTON1:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
                           
                            break;
                        case WM_NOTIFICATION_RELEASED:
EDIT_SetText(hEDIT0002,NULL);//EDIT????????
EDIT_SetText(hEDIT0001,NULL);//EDIT????????
GUI_Exec1();
WM_HideWindow(HWIN4);//?????ù??????
WM_ShowWindow(HWIN3);
NUMBER3=0;
break;
                    }
                    break;
                case GUI_ID_YES:
                    switch(NCode)
                    {
                          case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
EDIT_SetValue(Cd_edit_handle,0);
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//// if(WM_GetFocussedWindow()==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,0);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
// EDIT_SetValue(hEDIT0001,0);
//}
////EDIT_AddKey(hedit,'0');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_NO:
                    switch(NCode)
                    {
                         case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
// EDIT_SetValue(Cd_edit_handle,1);
//                       if(WM_HasFocus(hWin)==hEDIT0001)
//// if(WM_GetFocussedWindow()==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,1);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
//EDIT_SetValue(hEDIT0001,1);
//}
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON2:
                    switch(NCode)
                    {
                         case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
// EDIT_SetValue(Cd_edit_handle,2);
//                       if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,2);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
//EDIT_SetValue(hEDIT0001,2);
//}//EDIT_AddKey(hedit,'2');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON3:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
//EDIT_SetValue(Cd_edit_handle,3);
//                      if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,3);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
//EDIT_SetValue(hEDIT0001,3);
//}//EDIT_AddKey(hedit,'3');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON4:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
//EDIT_SetValue(Cd_edit_handle,4);
//                      if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,4);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
//  EDIT_SetValue(hEDIT0001,4);
//}//EDIT_AddKey(hedit,'4');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON5:
                    switch(NCode)
                    {
                       case WM_NOTIFICATION_CLICKED:
//WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
// EDIT_SetValue(Cd_edit_handle,5);
//                       if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
//  EDIT_SetValue(Cd_edit_handle,5);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
// EDIT_SetValue(hEDIT0001,5);
//}//EDIT_AddKey(hedit,'5');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON6:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
//WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
//EDIT_SetValue(Cd_edit_handle,6);
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,6);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
// EDIT_SetValue(hEDIT0001,6);
//}//EDIT_AddKey(hedit,'6');

GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON7:
                    switch(NCode)
                    {
                       case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
// EDIT_SetValue(Cd_edit_handle,7);
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,7);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
// EDIT_SetValue(hEDIT0001,7);
//}//EDIT_AddKey(hedit,'7');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON8:
                    switch(NCode)
                    {
                         case WM_NOTIFICATION_CLICKED:
//WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
// EDIT_SetValue(Cd_edit_handle,8);
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
//  EDIT_SetValue(Cd_edit_handle,8);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
//  EDIT_SetValue(hEDIT0001,8);
//}//EDIT_AddKey(hedit,'8');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_BUTTON9:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
// WM_SetFocus(Cd_edit_handle);    // ??±ê???¨edit?
//EDIT_SetValue(Cd_edit_handle,9);
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
////EDIT_AddKey(hEDIT0001,'0');//????0  ???
// EDIT_SetValue(Cd_edit_handle,9);
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
////EDIT_AddKey(hEDIT0002,'0');//????0  ????
// EDIT_SetValue(hEDIT0001,9);
//}//EDIT_AddKey(hedit,'9');
//
GUI_Exec1();
                            break;
                    }
                    break;
                case GUI_ID_HELP:
                    switch(NCode)
                    {
                      case WM_NOTIFICATION_CLICKED:
//                        if(WM_HasFocus(hWin)==hEDIT0001)
//{ //WM_SetFocus(hEDIT0001);
//EDIT_SetText(Cd_edit_handle,NULL);//??????????°¤??????????????2??
//  }
//elseif(WM_HasFocus(hWin)==hEDIT0002)
//{
////WM_SetFocus(hEDIT0002);
//EDIT_SetText(hEDIT0002,NULL);//??????????°¤??????????????2??
//}
GUI_Exec1();
//EDIT_SetText(hEDIT0001,NULL);//??????????°¤??????????????2??
//EDIT_SetText(hEDIT0002,NULL);//??????????°¤??????????????2??
//GUI_Exec1();
//WM_SetFocus(hEDIT0001);
//GUI_SendKeyMsg(GUI_KEY_BACKSPACE,1);//????????EDIT????
//WM_SetFocus(hEDIT0002);
//GUI_SendKeyMsg(GUI_KEY_BACKSPACE,1);//????????EDIT????
                            break;
                    }
                    break;
case GUI_ID_EDIT0:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
//     if(WM_HasFocus(WM_GetDialogItem(hWin,GUI_ID_EDIT1)))
//    {
//  Cd_edit_handle = WM_GetDialogItem(hWin,GUI_ID_EDIT1);
//    }else
//     if(WM_HasFocus(WM_GetDialogItem(hWin,GUI_ID_EDIT0)))
//    {
//  Cd_edit_handle = WM_GetDialogItem(hWin,GUI_ID_EDIT0);
//    }
                            break;
                        case WM_NOTIFICATION_RELEASED:
                           
                            break;
                        case WM_NOTIFICATION_VALUE_CHANGED:
                           
                            break;
                    }
                    break;
case GUI_ID_EDIT1:
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
//     if(WM_HasFocus(WM_GetDialogItem(hWin,GUI_ID_EDIT1)))
//    {
//  Cd_edit_handle = WM_GetDialogItem(hWin,GUI_ID_EDIT1);
//    }else
//     if(WM_HasFocus(WM_GetDialogItem(hWin,GUI_ID_EDIT0)))
//    {
//  Cd_edit_handle = WM_GetDialogItem(hWin,GUI_ID_EDIT0);
//    }
                            break;
                        case WM_NOTIFICATION_RELEASED:
                           
                            break;
                        case WM_NOTIFICATION_VALUE_CHANGED:
                           
                            break;
                    }
                    break;
            }
            break;
        default:
            WM_DefaultProc(pMsg);
    }
}

回帖(3)

李霞

2019-3-22 16:09:56
帮顶....
举报

陈宏子

2019-3-22 16:29:46
求原子哥解决
举报

邢钊楚

2019-3-22 16:45:39
我也不懂
举报

更多回帖

发帖
×
20
完善资料,
赚取积分