初级会员
- 积分
- 83
- 金钱
- 83
- 注册时间
- 2015-11-21
- 在线时间
- 22 小时
|
各位大神,我在弄软键盘时发现GUI_MessageBox有个问题,我创建一个FrameWin,上面是一些键盘按钮,
hKeyWin = GUI_CreateDialogBox(_aDialogCreate_kb, GUI_COUNTOF(_aDialogCreate_kb), _cbCallback_kb, 0, 0, 0);WM_MakeModal(hKeyWin); //进行模态
//GUI_ExecCreatedDialog(hKeyWin);
我按下确认键时执行下面代码
EDIT_GetText(WM_GetDialogItem(hWin,GUI_ID_EDIT0), str, 10);
sscanf(str,"%f",&KeyValue_f);
GUI_MessageBox(str,"Right",GUI_MESSAGEBOX_CF_MOVEABLE); //发送一个Msg
GUI_EndDialog(hKeyWin, 0);
1. 但MessageBox不能按下它的确认键进行关闭(如下左图),要关闭hKeyWin后才可以,但这样会报错,
我想是上面使用WM_MakeModal(hKeyWin)的原因; 但不模态的话很容易误操作弹出多个hKeyWin造成内存不足而死机
这样的话怎么处理才好?谢谢!
2. 如果不模态它而使用GUI_ExecCreatedDialog创建,这样GUI_MessageBox能正常关闭,但焦点在Edit中不能自动退出
而需要点击其他控件之后才可以再次点击Edit弹出hKeyWin,这是什么原因?小弟新手的,哈哈
|
|