硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2360|回复: 9
收起左侧

[emWin] 求助!关于emwin窗口之间的消息传递方法,键盘如何传输数值到另一个窗口EDIT控件

[复制链接]

3

主题

22

回帖

31

积分

新手上路

积分
31
发表于 2019-5-24 17:37:23 | 显示全部楼层 |阅读模式
本帖最后由 天涯海角 于 2019-5-24 17:39 编辑

说来惭愧啊,从上周五开始搞这个了,没人教,只能自己看教程,看论坛的,遇到大大小小各种问题。眼看键盘输入要完成了,卡在了数值传递这。
看到官方例程是通过GUI_SendKeyMsg函数传递的,由于我的键盘是用Framewin创建的,在传递之前也用了WM_DisableWindow使能窗口,可是数值还是没有传递过去。不知道哪里卡住了,麻烦群里的大佬们帮忙看看,文件是我自己写的GUI程序
Application.zip (7 KB, 下载次数: 12)
A界面
      |                                                        
      | <-----------GUI_SendKeyMsg()------------>B 界面
      |                                                        |
      |__EDIT显示                                        |__BUTTON按下,B界面EDIT显示,ENTER按下,A界面显示最终数字
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2019-5-24 20:16:57 | 显示全部楼层
要新建窗口,聚焦输入。显示输入的值,可以新建一个子窗口接纳数值显示。
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2019-5-24 20:23:27 | 显示全部楼层
如图所示。这是一个增加用户信息的页面,按OK首先是新建一个小键盘出来(子菜单),同时再新建一个编辑输入框覆盖在原位置(子控件)。
按键键盘输入.jpg
Releasing your creativity
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107272
QQ
发表于 2019-5-25 00:43:50 | 显示全部楼层
GUI_SendKeyMsg()-只能发给当前聚焦的控件
回复

使用道具 举报

3

主题

22

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2019-5-27 08:22:25 | 显示全部楼层
廷润 发表于 2019-5-24 20:23
如图所示。这是一个增加用户信息的页面,按OK首先是新建一个小键盘出来(子菜单),同时再新建一个编辑输入 ...

采用什么方法把数值传给控件呢
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2019-5-27 08:45:31 | 显示全部楼层
天涯海角 发表于 2019-5-27 08:22
采用什么方法把数值传给控件呢

输入指令你知道,显示控件你知道。

你把输入的内容保存在全局变量,然后根据输出节奏,更新到显示控件即可
Releasing your creativity
回复

使用道具 举报

335

主题

2040

回帖

3050

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3050
发表于 2019-5-27 15:41:40 | 显示全部楼层
建议使用GUI_Storekeymsg比较好。 焦点在哪里,按键信息WM_Key就传递到哪里。
如果当前控件没有响应按键的功能,按键信息就传递到此控件的父窗口。比如Frame或者window的client窗口
回复

使用道具 举报

11

主题

31

回帖

64

积分

初级会员

积分
64
发表于 2019-7-6 10:23:43 | 显示全部楼层
廷润 发表于 2019-5-24 20:23
如图所示。这是一个增加用户信息的页面,按OK首先是新建一个小键盘出来(子菜单),同时再新建一个编辑输入 ...

我也是这样做了一个拼音键盘,点击一个edit控件,然后弹出拼音键盘,但是弹出的拼音键盘里的edit控件是默认没有聚焦的,需要点击才会聚焦,用了EDIT_SetFocussable()函数还是没法一开始就聚焦,想问问大佬有啥办法吗
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2019-7-6 17:14:48 | 显示全部楼层
提线木偶 发表于 2019-7-6 10:23
我也是这样做了一个拼音键盘,点击一个edit控件,然后弹出拼音键盘,但是弹出的拼音键盘里的edit控件是默 ...

其实你再把你的需求明确一点,你就知道怎么弄了。多玩玩就清楚消息怎么走,自己怎么按规则管控
编辑框自己管控.png
Releasing your creativity
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2019-7-6 17:24:34 | 显示全部楼层
廷润 发表于 2019-5-24 20:23
如图所示。这是一个增加用户信息的页面,按OK首先是新建一个小键盘出来(子菜单),同时再新建一个编辑输入 ...

我的方法没有走emWin自动管理。物理按键的消息自己检测拿到,根据自己规划的键盘逻辑,对应解析按键来重绘键盘的底色、字符。如果是OK键,就直接重绘编辑框对应的字符内容。
Releasing your creativity
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-24 06:00 , Processed in 0.275339 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表