请教下ucGUI中的WM_KEY

刚开始学ucGUI,创建了一个任务A负责GUI_Exec();一个任务B负责GUI_TOUCH_Exec();一个任务C创建了对话框按钮啥的。1我单独创建了一个按钮,然后... 刚开始学ucGUI,创建了一个任务A负责GUI_Exec();一个任务B负责GUI_TOUCH_Exec();一个任务C创建了对话框按钮啥的。
1 我单独创建了一个按钮,然后通过GUI_GetKey读取按下按钮的ID,发现成功了,ID存放在一个全局变量_Key里面,请教下是什么时候在哪个函数里给_Key赋值的吗?
2 我在一个对话框里创建了一个按钮,看到别的资料里讲:
”启用win窗体管理时, 使用_KeyMsg作为键盘消息记录变量, 在使用窗体管理模块时, 通过在消息LOOP当中调用GUI_PollKeyMsg()函数检测_KeyMsg, 并将收集到的键盘消息以WM_KEY传送到当前焦点窗体.“
发现按下按钮的时候GUI_PollKeyMsg函数里的_KeyMsg一直为0,不可能将WM_KEY发送出去啊,
展开
 我来答
610095871
2013-06-25 · TA获得超过455个赞
知道小有建树答主
回答量:380
采纳率:100%
帮助的人:270万
展开全部
首先在WM_exec1中调用了WM_pfHandlePID即 WM_HandlePID
这个函数首先根据当前的坐标判断出当前的窗口句柄,之后会发WM_TOUCH消息
此消息在按钮回调颂森简函数中被 _OnTouch进行处理
当按钮被释放后 在OnTouch中会调用
_ButtonReleased(hObj, pObj, WM_NOTIFICATION_RELEASED);
在_ButtonReleased中调用了GUI_StoreKey(pObj->Widget.Id);将其值赋野裤给_Key全局变春段量

第二个问题 我不是很懂,我个人的 理解就是 ,ucgui是支持外部键盘输入的,也就是说,当你的应用中加入了一个外部键盘输入,那么你就要自己写按键处理,通过调用GUI_StoreKeyMsg这个函数,来被ucgui处理。
ucgui刚接触没多久,不知道是不是这样。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式