随笔分类 - emwin
摘要:@2019-05-16 【问题】 参照Armfly的emwin教程第46章 BUTTON-按钮控件显示位图和流位图,实际使用时导致界面切换卡顿延迟较大的情况 【环境】 F429IGT6 + W9825G6KH 【分析】 经请教 @硬汉(Eric2013) 知可能是SDRAM带宽限制所致,查看了W98
阅读全文
摘要:@2019-04-30 【小记】 emwin窗口ID是唯一的 emwin多次创建同一窗口,则窗口句柄不同,多次删除窗口采取LIFO机制,即最新创建的窗口被首先删除 获取多次创建同一窗口的ID,准确位置是在窗口创建函数返回获取,而非其回调函数 多个窗口创建后,都会被激活运行,即每个窗口的回调函数都会被
阅读全文
摘要:@2019-04-28 【小记】 使用emwin设计器生成的程序,将该窗口创建放在中断服务程序中出现奇怪现象,非死机但功能间歇性异常,将创建窗口程序放于普通程序中则工作正常
阅读全文
摘要:@2019-04-28 【小记】 由函数GUI_CreateDialogBox 创建的窗口所返回的句柄与回调函数形参中的窗口句柄参数是一样的
阅读全文
摘要:2019-03-01 【小记】 GUI_MessageBox 函数执行后必须手动点击关闭窗口,关闭窗口前线程将阻塞在此处等待关闭窗口事件 【使用场景】 由于该函数不会产生任何消息, 所以可利用阻塞特性来感知识别其产生了关闭动作,然后执行一些动作
阅读全文
摘要:@2019-02-27 【小记】 emwin 窗口被模态之后,创建子窗口则原模态窗口变为非模态
阅读全文
摘要:@2019-02-25 【小记】 hHeader = LISTVIEW_GetHeader(hListView); WM_DisableWindow(hHeader);
阅读全文
摘要:@2019-02-22 【小记】 禁止聚焦功能便可实现
阅读全文
摘要:@2019-02-20 【小记】 emwin存在多个窗口时,如何获取当前所在窗口 > emwin 之获取当前窗口的一种方法 【需求】 用于在代码中获知当前呈现的是哪个窗口 【方法】 进入新窗口将新 window_id 记录为当前 ID 退出当前窗口将当前 ID 恢复至父窗口 window_id 获知
阅读全文
摘要:@2019-01-29 【小记】 小键盘的BUTTON控件由WINDOW控件组织,只需将所用BUTTON控件禁止聚焦即可。 小键盘的BUTTON控件由FRAMEWIN控件组织,将所用BUTTON控件禁止聚焦则无法实现。 【解决办法】 控件聚焦可方便实现键值输入,既然无法实现聚焦,那使用函数 WM_S
阅读全文
摘要:@2019-01-26 【小记】 使用函数 WM_GetWindowRectEx(hItem, &Rect),坐标就存储在对象 Rect 中,可用于一些默认创建的窗口
阅读全文
摘要:@2018-12-21 【小记】 在当前窗口P创建一新窗口C后再使用函数 WM_DeleteWindow 删除该C窗口时,删除窗口句柄必须是根句柄,否则使用 WM_GetClientWindow(pMsg->hWin) 将会导致死机的现象
阅读全文
摘要:@2018-12-11 【小记】 例:定时器事件到来后切换至某个界面, 即在原始界面上发生跳转,在新界面上可返回至原始界面,可使用如下方法: a,在定时器事件发生后给原始界面中的自定义消息响应发送一条该自定义消息 b,在该自定义消息中做界面切换,这就给新创建的窗口指定了父窗口,使其之后有家可回
阅读全文
摘要:@2018-12-11 【小记】 设计界面中使用了 EDIT 控件,但在其初始化语句中误使用了 text-color 属性API,导致了控件 EDIT 中的 Text 无法显示,具体如下 1 hItem = WM_GetDialogItem(pMsg->hWin, ID_EDIT_0); 2 TEX
阅读全文
摘要:@2018-12-10 【小记】 使用官方 <GUIBuilder.exe> 软件里的 Image 控件,注意格式为 .bmp,这种方式是将图片数据直接转为十六进制数据存储至静态区 具体使用方法见其生成的 .c 文件
阅读全文
摘要:@2018-11-8 【小记】 【需求】 官方只提供圆角矩形图形,其他图形及颜色需求则要自己实现 【注意】 通过回调函数自实现的图形绘制存在该回调函数一直被调用的现象,而非像窗口回调函数中 BUTTON 事件的单次触发型,所以在自实现的 BUTTON 回调好函数中需要单次执行的部分,则需额外注意
阅读全文
摘要:@2018-10-31 【需求】 界面上绘制状态指示图标 【方法】 --① 方法一 外部存储介质上的图标读写与显示 i . 将要显示的图标使用官方软件<BmpCvt.exe>转换成 ".dta"格式的文件 ii . 将 ".dta"格式的文件写入外部存储介质 iii. 将 ".dta"格式的文件读出
阅读全文
摘要:@2018-10-15 导致死机的代码示例如下 1 /** 2 * @brief widget ID define 3 * @{ 4 */ 5 6 #define ID_WINDOW_0 (GUI_ID_USER + 0x00) 7 #define ID_TEXT_0 (GUI_ID_USER +
阅读全文
摘要:@2018-09-05 【小记】 LISTWHEEL控件的LISTWHEEL_SetPos函数的使用注意事项: 该函数不能在创建窗口的WM_INIT_DIALOG分支下作为修改LISTWHEEL控件属性时使用或使用无效,应该在调用该LISTWHEEL的创建窗口的顶层函数后使用方能生效,即想要该函数起
阅读全文
摘要:@2018-09-03 【问题】 在 WM_PAINT 消息分支里绘制2D图形可以正常显示,而在外部函数或按钮按下事件的响应消息分支下等处,绘制2D图形则不显示。 【解决】 在除消息WM_PAINT分支外使用2D图形绘制函数,首先使用函数WM_SelectWindow(mainWindow_Hand
阅读全文