硬汉嵌入式论坛

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

[emWin] F429+RGB88屏幕+STemwin,同一位置,位图多次刷新没有显示最新的,而是显示第一次刷新的那个

[复制链接]

19

主题

63

回帖

120

积分

初级会员

积分
120
发表于 2018-11-29 11:35:05 | 显示全部楼层 |阅读模式
问题:
F429+RGB88屏幕+STemwin,同一位置,位图多次刷新没有显示最新的,而是显示第一次刷新的那个


代码:
先创建一个窗体,在窗体内显示数字,数字是有png转成的位图。
GUI_DrawBitmap(&bmnubmer_0,x,y);//图片是数字0
GUI_DrawBitmap(&bmnubmer_1,x,y)//图片是数字1

结果:这两个函数调用后,一直显示0,不显示1。

修改手段:
GUI_DrawBitmap(&bmnubmer_0,x,y);//图片是数字0
//先把数字0擦掉
GUI_SetColor(GUI_TITLE_BK);
GUI_FillRect(x,y,x+11,y+14);
GUI_DrawBitmap(&bmnubmer_1,x,y)//图片是数字1

结果:还是一直显示0,不显示1。
问题:
同一位置,位图多次刷新没有显示最新的,而是显示第一次刷新的那个??

期待硬汉哥回复


回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2018-11-29 13:23:14 | 显示全部楼层
直接使用这个
GUI_DrawBitmap(&bmnubmer_0,x,y);//图片是数字0
//先把数字0擦掉
GUI_SetColor(GUI_TITLE_BK);
GUI_FillRect(x,y,x+11,y+14);
GUI_DrawBitmap(&bmnubmer_1,x,y)//图片是数字1

是可以覆盖的,

但是把这个方法放到case WM_PAINT:重绘失败
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2018-11-29 13:34:43 | 显示全部楼层
来自网友的一句话:“
是不是画在了图层的下面了!我遇到的问题是画2D图像,图像显示在背景的后面,只有拖动背景才能露出来!我不知道该怎么改!”
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115777
QQ
发表于 2018-11-29 13:46:48 | 显示全部楼层
发个你完整的测试代码看看
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2018-11-29 14:23:32 | 显示全部楼层
来自网友的一句话:“
是不是画在了图层的下面了!我遇到的问题是画2D图像,图像显示在背景的后面,只有拖动背景才能露出来!我不知道该怎么改!”
确实是这个样子的,在最底层显示的。不是在自己新建的图层显示的
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2018-11-29 14:25:07 | 显示全部楼层
代码我整理下,看自己能不能解决,解决不了的话  等会上传下,给自己1小时奋斗下   谢谢 硬汉哥
回复

使用道具 举报

36

主题

2050

回帖

2158

积分

至尊会员

积分
2158
发表于 2018-11-29 14:36:39 | 显示全部楼层
这个楼主要提供代码才好检查
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2018-11-29 14:43:02 | 显示全部楼层
解决啦,感谢天地

增加一句话,
WM_InvalidateWindow(pMsg -> hWin);

翻译手册上说是:使窗口无效
个人理解是,需要重绘,不知道对不对
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-17 12:03 , Processed in 0.251100 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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