硬汉嵌入式论坛

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

[emWin] [模拟器]emWin532-对话框Framwin,Window句柄测试

[复制链接]

10

主题

23

回帖

63

积分

初级会员

积分
63
发表于 2018-9-17 13:03:24 | 显示全部楼层 |阅读模式
本帖最后由 ewrest 于 2018-9-18 00:26 编辑

0. 本次实验环境 vs2013 + stemwin 5.32 + emwin 5.32手册

1.实验目的
发布实验结果,便于以后查看。同时总结下使用emwin以来的一些小心的。
如果有什么建议,请提出来,好完善这个“字典"。

2.实验结果
1)从实验的结果来看,以 WINDOW 控件作为 Dialog 的基础窗体,整个回调包括对话框的控件句柄,都是表里如一。
    而 FRAMEWIN 作为基础窗体则会出现不同位置句柄不一致的问题(客户区和非客户区)。
2)如果没有物理按键神马的,对控件顺序不讲究或者焦点处理不需要特别高的话,创建 Dialog 建议选用 WINDOW 控件为窗体。
     优点如下:
     a)句柄表里如一,可以作为判断的内容,不必理会客户区以及非客户区的导致的句柄差异。
     b)高自由度的重绘,FRAMEWIN 默认带有窗体结构(边框,标题等),去除结构需要额外调用API,
         一是造成不必要的代码执行,二是在单片机执行卡顿的时候,还可以明显的看到 FRAMEWIN 被隐藏掉的标题栏一闪而过。
      缺点如下:
      a)不支持聚焦
      b)当 Dialog 中嵌入一个 带有多个子控件的 WINDOW 之后,Dialog 原有的资源列表的顺序响应WM_KEY时会出错。(大伙可以确认下,遇到过,但是并未再次确认问题)
实验运行结果.png



3.实验步骤

1)创建用于存储的结构体和全局变量:
typedef struct  
{
    WM_HWIN createWin;
    WM_HWIN createParentWin;
    WM_HWIN paintWin;
    WM_HWIN paintParentWin;
    WM_HWIN initWin;
    WM_HWIN initParentWin;
    WM_HWIN notifyWin;
    WM_HWIN notifyParentWin;
}TEST_HANDLE;
TEST_HANDLE testFramewin = { WM_HWIN_NULL };
TEST_HANDLE testWindow = { WM_HWIN_NULL };


2)在 WM_PAINT,WM_INIT_DIALOG,WM_NOTIFY_PARENT 和对话框创建后添加代码.
WM_PAINT:
WM_PAINT.png

WM_INIT_DIALOG:
WM_INIT.png

WM_NOTIFY_PARENT :
WM_NOTIFY.png

对话框创建后:
MainTask.png

3)修改资源列表,添加一个按钮上去:
_ac.png

4)copy一份为FRAMEWIN控件的对话框:
copy framewin.png

5)程序运行后,分别点击两个对话框中的按钮一次. 2btn.png

6)在GUI_Delay(100); 出打断点.

7)得到结果


4代码gitee地址:
https://gitee.com/ourran/emWin/tree/master




评分

参与人数 1金币 +50 收起 理由
eric2013 + 50 赞一个!

查看全部评分

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115777
QQ
发表于 2018-9-17 14:24:32 | 显示全部楼层
感谢楼主分享。
回复

使用道具 举报

10

主题

23

回帖

63

积分

初级会员

积分
63
 楼主| 发表于 2018-9-18 00:27:29 | 显示全部楼层

群主,论坛什么可以支持MarkDown。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115777
QQ
发表于 2018-9-18 02:02:49 | 显示全部楼层
ewrest 发表于 2018-9-18 00:27
群主,论坛什么可以支持MarkDown。

好的,后面我研究。

你当前的这个,通过下面方法就可以解决了,这个是dz论坛的通病,一定要在这种状态下编辑出来的帖子,排版才正常。




QQ截图20180918015627.png
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-17 11:56 , Processed in 0.250706 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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