精易论坛

标题: 解决图片框连续移动导致的闪烁问题 [打印本页]

作者: 憨憨问号    时间: 昨天 13:28
标题: 解决图片框连续移动导致的闪烁问题
此贴为记录贴
最近用缓动模块移动图片框的时候发现原生组件的图片框移动的时候会出现偶发性的闪烁问题
我尝试使用下面这条听说很好用的命令进行解决
  
子程序名返回值类型公开备 注
修复窗口闪烁整数型 修复易语言窗口闪烁
参数名类 型参考可空数组备 注
窗口句柄整数型
返回 (设置窗口信息 (窗口句柄, -20, 位或 (GetWindowLongA (窗口句柄, -20), 33554432)))
DLL命令名返回值类型公开备 注
设置窗口信息整数型 特效 在窗口结构中为指定的窗口设置信息  指定数据的前一个值
DLL库文件名:
 
在DLL库中对应命令名:
SetWindowLongA
参数名类 型传址数组备 注
hwnd整数型句柄
nIndex整数型-16=样式,-20=扩展样式
dwNewLong整数型新样式


看别人说用了这个命令就不闪了,但是就我的电脑来说,依旧会闪烁
后面突发奇想,能不能换用其他的组件来放图片,毕竟“按钮”“编辑框”等等进行移动的时候都是不会闪烁的
一开始尝试用“超级按钮”,因为能设置图片,但是我发现超级按钮以及其他的一些能够放图片的组件不能和图片框一样设置“图片显示方式”,也就是“缩放图片”“图片居中”等等


最后我发现,“动画框”完美的解决了我的问题
动画框:
1.移动时不闪烁
2.可以用背景图当图片框展示图片
3.支持设置图片显示方式,可以缩放显示等等
4.能和图片框一样设置边框
5.能用代码读写临时改变图片


总之,动画框目前看来,除了不能放gif图片,其他地方基本和图片框没什么两样,最关键的是动起来不会闪烁
虽然我还没测试,不过应该在快速切换图片的时候也不会闪烁,有兴趣的可以试试看

作者: 胖子葛格    时间: 昨天 14:11
感谢大神分享~!
作者: kyo9766    时间: 昨天 14:43
动画框不支持 gif ,也很好解决加入 动画物体就行了,功能还很多
作者: kmskik    时间: 昨天 17:38

作者: qqmqqg    时间: 昨天 19:29
666666666666666666666
作者: 1184798949    时间: 昨天 21:03
感谢分享
作者: 杨明煜    时间: 昨天 21:17
学习进步!......
作者: 亿万    时间: 昨天 21:22
感谢分享
作者: 陈治勤    时间: 8 小时前
6666666666666666
作者: year1970    时间: 1 小时前
感谢分享
作者: yaokui6659    时间: 半小时前
感谢分享
作者: lm88818    时间: 3 分钟前
感谢分享,很给力!~




欢迎光临 精易论坛 (https://bbs.ijingyi.com/) Powered by Discuz! X3.4