易语言缩放图片的代码思路, 画板行不行,图片完全随(组件?)的大小改变而改变,不想用现成的图片框 影像框

 我来答
小樓思雨
推荐于2017-12-15 · TA获得超过1657个赞
知道小有建树答主
回答量:915
采纳率:66%
帮助的人:1103万
展开全部
全部源码给你,和QQ聊天窗口的相似!
由于画板的绘图效率比较低,一些大图片可能会出现卡的现象!
放入其它组件时注意下窗口的焦点,如焦点不在_启动窗口,_启动窗口_滚轮被滚动 事件会失效!

.版本 2.支持库 eAPI
.程序集 窗口程序集1
.程序集变量 后台, 画板
.程序集变量 图片号
.程序集变量 缩放值X, 小数型
.程序集变量 缩放值Y, 小数型
.程序集变量 x, 整数型
.程序集变量 y, 整数型
.程序集变量 可移动, 逻辑型

.子程序 __启动窗口_创建完毕
边框 = 0
复制窗口组件 (画板1, 后台)
画板1.移动 (0, 0, 取用户区宽度 (), 取用户区高度 ())
后台.移动 (0, 0, 取用户区宽度 (), 取用户区高度 ())
画板1.自动重画 = 真
后台.自动重画 = 真
通用对话框1.过滤器 = “图像文件|*.jpg;*.bmp;*.gif;*.ico”
缩放值X = 1
缩放值Y = 1

.子程序 _画板1_被双击, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

.如果真 (通用对话框1.打开 ())
图片号 = 载入图片 (通用对话框1.文件名)
绘图 ()
.如果真结束

.子程序 绘图, 逻辑型
.局部变量 htkd
.局部变量 htgd

.如果真 (图片号 = 0)
返回 (假)
.如果真结束
htkd = 缩放值X × 后台.取图片宽度 (图片号)
htgd = 缩放值Y × 后台.取图片高度 (图片号)
画板1.移动 (0, 0, htkd, htgd)
后台.移动 (0, 0, htkd, htgd)
后台.画图片 (图片号, 0, 0, htkd, htgd, )
后台.复制 (, , , , 画板1, 0, 0, )
移动 (, , htkd, htgd)
返回 (真)

.子程序 _画板1_鼠标左键被按下, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

' 发送信息 (161, 2, 0)
x = 横向位置
y = 纵向位置
可移动 = 真
捕获鼠标 (画板1.取窗口句柄 ())

.子程序 _画板1_鼠标左键被放开, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

释放鼠标 ()可移动 = 假
.子程序 _画板1_鼠标位置被移动, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

.如果真 (可移动)
左边 = 取鼠标水平位置 () - x
顶边 = 取鼠标垂直位置 () - y
.如果真结束

.子程序 __启动窗口_滚轮被滚动, 逻辑型
.参数 滚动距离, 整数型
.参数 功能键状态, 整数型

缩放值X = 缩放值X + 滚动距离 × 0.1
缩放值Y = 缩放值Y + 滚动距离 × 0.1
.如果真 (缩放值X < 0.1)
缩放值X = 0.1
.如果真结束
.如果真 (缩放值X > 5)
缩放值X = 5
.如果真结束
.如果真 (缩放值Y < 0.1)
缩放值Y = 0.1
.如果真结束
.如果真 (缩放值X > 5)
缩放值Y = 5
.如果真结束
绘图 ()
输出调试文本 (缩放值X)
大强小屋
2012-10-15 · TA获得超过5765个赞
知道大有可为答主
回答量:2164
采纳率:50%
帮助的人:854万
展开全部
画板可以,只是需要你计算一下图片尺寸,然后画出图片。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式