为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

图片放大缩小

2017-10-13 3页 doc 14KB 19阅读

用户头像

is_005190

暂无简介

举报
图片放大缩小图片放大缩小 Option Explicit Private Const ratio_small As Single = 0.5 Private Const ratio_large As Single = -1# 为什么是-1呢? Private Sub Zoom(ByVal img As Image, ByVal ratio As Single) img.Stretch = True img.Left = img.Left + img.Width * ratio / 2# 为什么要除以2呢? img.Top = ...
图片放大缩小
图片放大缩小 Option Explicit Private Const ratio_small As Single = 0.5 Private Const ratio_large As Single = -1# 为什么是-1呢? Private Sub Zoom(ByVal img As Image, ByVal ratio As Single) img.Stretch = True img.Left = img.Left + img.Width * ratio / 2# 为什么要除以2呢? img.Top = img.Top + img.Height * ratio / 2# 为什么要除以2呢? img.Width = img.Width - img.Width * ratio img.Height = img.Height - img.Height * ratio End Sub Private Sub Command1_Click() Zoom Image1, ratio_small End Sub Private Sub Command2_Click() Zoom Image1, ratio_large End Sub ‘-------------------------------------------------------------------------------------------- 使用 PaintPicture 或者API中的 StrechBlt 我用下面代码实现控件随窗口的放大缩小。 SX = FormName.ScaleWidth / FormOldWidth '保存窗体宽度缩放比例 SY = FormName.ScaleHeight / FormOldHeight '保存窗体高度缩放比例 On Error Resume Next For Each Obj In FormName If Len(Obj.Tag) > 0 Then Pos = Split(Obj.Tag, " ") If TypeOf Obj Is ComboBox Or TypeOf Obj Is DriveListBox Then Obj.Move Pos(0) * SX, Pos(1) * SY, Pos(2) * SX Else Obj.Move Pos(0) * SX, Pos(1) * SY, Pos(2) * SX, Pos(3) * SY End If End If Next Obj Err.Clear On Error GoTo 0 SX,SY中存放的是窗口放大缩小的比例。tag中放的是窗口中每个控件的left,width,right,height。 我现在能够实现窗口的放大缩小,并且控件也能够随着放大缩小 ‘--------------------------------------------------------------------------------------------------------- 这是一个窗体内的控件能随窗体大小变化而随之变化的代码,不足的是在窗体变化中无法保证控件(或窗体)的长宽比例不变,哪位高手能想个办法,不论窗体如何变大变小,保证其高宽的比例不会变. Private Sub Form_Load() form1.Height = Screen.Height / 3 form1.Width = Screen.Width / 5 End Sub Private Sub Form_Resize() Image1.Move 0, 0, ScaleWidth, ScaleHeight End Sub ‘---------------------------------------------------------------------------------------------------------- picture.autosize=true 是图片框的大小自动适应图像的大小,image 刚好相反,可楼主不要,要闪。 所以只能自己处理缩放。而这就牵涉到处理的时间了 ‘-------------------------------------------------------------------------------------------------------------------
/
本文档为【图片放大缩小】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索