CE下多个图片同时动态显示问题

[复制链接]
查看11 | 回复10 | 2021-1-27 07:16:22 | 显示全部楼层 |阅读模式
最近做一项目,要求在CE下,能实现多个图片的动态显示,我想到了1个思路,大家帮忙看看,那个好,
启动一个DIALOG窗体,在里面启动一个线程,分析要在这个窗体上显示几个图片,如果是3个,则启动3个线程,分别在各自的线程中把这三个图片加载到内存中,并根据要求调用特效函数来动态显示各个图片,这个时候系统在启动一个线程,在内存中建立一个位图,时时的读前面3个线程里面的图片,把这三个图片根据用户要求的大小和位置bitblt到这个新建立的位图上,然后在把这个位图贴到dialog窗体上,这样来实现3个图片的动态显示
但是如果开线程太多会使系统崩溃的...
希望大家帮我看看如何解决这个问题
分 -->
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
不明白
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
这个没必要用线程,线程间的同步问题,会让你的图片看起来很麻烦,直接在窗体中根据坐标作图,一百张都没问题,只要你的坐标没问题,仔细研究下BITBLT函数,看里面的参数,理解每个参数后,作图很简单,
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
如果要在窗体上显示多图+滚动RSS新闻+时间日期呢?
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
对呀,我要的其实和ansonrobert说的一样,要显示多图,+滚动新闻,以及时间日期等,如果是单独滚动新闻我觉得还好说.但如果滚动新闻的背景色为透明,就有点迷茫了.只让字在上面滚动,我还没想好,同理的,如果是时钟,怎样只显示指针呢,后面背景也透明????
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
用Transparentblt函数就可以显示透明,具体用法MSDN上的参数说明,wince支持的,然后你想怎么使用就随你了,,
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
TO:微笑的迪妮莎
哦,Transparentblt我一会研究下,现在有这么个事,就你刚才说的,用BitBlt可以做多个图片的动态显示,但是我都点没想明白,如果我由个图片A,B,C的话,A在最下层显示,B在中间,C在最上,并且他们都有重合部分,如果让他们都动起来的时候,重合部分只显示最高层的图片内容呢,不然那重合部分会不停显示两个图片,从而出现闪烁.我有点不明白你说的用BitBlt的哪个参数实现
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
bitblt同时显示多个图片的话,1》你需要预选计算出多个图片所站区域的大小(整个的大小),2》需要把多个图片放到同一个MEMORYDC下。3》然后在显示,这样做速度会很慢,消耗N都的资源,不建议同时显示多个图片,

回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
一个线程,然后一张大图不停刷新。。不就可以了吗??。。
回复

使用道具 举报

千问 | 2021-1-27 07:16:22 | 显示全部楼层
我就是在同一个线程里面显示几个图片的。就是显示了一个又一个的。多调动几次代码即好了
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行