硬汉嵌入式论坛

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

[emWin] emWin IMAGE控件的BMP图片不能显示

[复制链接]

34

主题

83

回帖

185

积分

初级会员

积分
185
发表于 2016-9-1 13:29:09 | 显示全部楼层 |阅读模式
     我使用IMAGE控件的IMAGE_SetBMPEx()函数获取fatfs里面的bmp图片不能显示?我用GUI_BMP_DrawEx()函数能正常显示fatfs里面的BMP图片,但是使用IMAGE控件却不能显示:
    FIL bmp;
    FRESULT res;

    SET_hImage[0]= IMAGE_CreateEx(0, 20,240,30,WM_HBKWIN,WM_CF_SHOW,IMAGE_CF_TILE,ID_SET_TOUCH);  //创建一个IMAGE控件
    f_open(&bmp,"picture/set/touch/touch.bmp",FA_READ);  //打开文件系统中的bmp文件
    IMAGE_SetBMPEx(SET_hImage[0],_Get_BackImage,(void *)&bmp);  //加载bmp到控件显示
    f_close(&bmp); //关闭文件
    控件创建和文件打开都是正常的,但是上面的操作不能正常显示图片。



    f_open(&bmp,"picture/set/touch/touch.bmp",FA_READ);
    GUI_BMP_DrawEx(_Get_BackImage,(void *)&bmp,0,20);  //直接用位图函数却能正常显示图片。
    f_close(&bmp);
        请问这是为什么?为什么IMAGE控件显示图片不正常?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115717
QQ
发表于 2016-9-2 09:20:05 | 显示全部楼层
使用这个函数 IMAGE_SetBMPEx是边读取边显示的方式实现的,且不可还没有读取完毕就调用f_close关闭了问题。

也就是把你的这个函数    f_close(&bmp);先注释掉。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-14 07:17 , Processed in 0.222290 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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