OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3675|回复: 8

emwin中,frame框架下可以直接绘制位图吗?我的不显示

[复制链接]

15

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
343
金钱
343
注册时间
2017-7-17
在线时间
68 小时
发表于 2017-7-25 13:48:33 | 显示全部楼层 |阅读模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2017-7-26 01:34:32 | 显示全部楼层
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2016-8-9
在线时间
6 小时
发表于 2017-7-27 20:34:50 | 显示全部楼层
可以啊,调用位图显示函数GUI_DrawBitmap()即可
回复

使用道具 举报

15

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
343
金钱
343
注册时间
2017-7-17
在线时间
68 小时
 楼主| 发表于 2017-7-28 08:45:32 | 显示全部楼层
煜煜 发表于 2017-7-27 20:34
可以啊,调用位图显示函数GUI_DrawBitmap()即可

我的不显示啊,你试过没有啊,难道我设置错了
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2016-8-9
在线时间
6 小时
发表于 2017-7-31 10:04:39 | 显示全部楼层
开心的人们 发表于 2017-7-28 08:45
我的不显示啊,你试过没有啊,难道我设置错了

在回调函数里的重绘消息下调用
回复

使用道具 举报

15

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
343
金钱
343
注册时间
2017-7-17
在线时间
68 小时
 楼主| 发表于 2017-7-31 10:25:51 | 显示全部楼层
煜煜 发表于 2017-7-31 10:04
在回调函数里的重绘消息下调用

好的,我试试,直接调用函数不行吗?谢谢
回复

使用道具 举报

15

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
343
金钱
343
注册时间
2017-7-17
在线时间
68 小时
 楼主| 发表于 2017-7-31 10:34:09 | 显示全部楼层
煜煜 发表于 2017-7-31 10:04
在回调函数里的重绘消息下调用

static void _cbDialog4(WM_MESSAGE * pMsg) {
  WM_HWIN hItem;
  WM_HWIN hDlg;

  hDlg = pMsg->hWin;
  switch (pMsg->MsgId) {
  case WM_INIT_DIALOG:
    hItem = WM_GetDialogItem(hDlg, GUI_ID_MULTIEDIT0);
    MULTIEDIT_SetText(hItem, "MULTIEDIT widget");
    MULTIEDIT_SetInsertMode(hItem, 1);
  WM_SelectWindow(hItem);
  GUI_DrawBitmap(&bmLOGO1,110,110);  //绘制ALIENTEK图标       
    break;
  default:
    WM_DefaultProc(pMsg);
  }
}

还是不行啊,
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2016-8-9
在线时间
6 小时
发表于 2017-8-2 10:14:22 | 显示全部楼层
你那个消息只是初始化对话框的,在其下调用肯定不会进行重绘啊,不进行重绘也就不会显示位图了。我的程序你参考下,希望可以帮到你。static void _cbDialog(WM_MESSAGE * pMsg) {
  WM_HWIN hItem;
  int     NCode;
  int     Id;
  

  switch (pMsg->MsgId)
        {
               
                case WM_PAINT:
                       
                        GUI_SetBkColor(GUI_WHITE);
                        GUI_Clear();
                        GUI_DrawBitmap(&bmFISH,28,5);             
                        break;
回复

使用道具 举报

15

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
343
金钱
343
注册时间
2017-7-17
在线时间
68 小时
 楼主| 发表于 2017-8-2 10:33:06 | 显示全部楼层
煜煜 发表于 2017-8-2 10:14
你那个消息只是初始化对话框的,在其下调用肯定不会进行重绘啊,不进行重绘也就不会显示位图了。我的程序你 ...

谢谢,昨天我又查了查,看到有的确实是在 case WM_PAINT 调用的,请问您知道一般什么时候重绘吗?就开始,还是每隔一段时间,谢谢。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 08:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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