首页 用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片?

用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片?

举报
开通vip

用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片?用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片? 请教:用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片, 2012-09-25 15:54 提问者: |浏览次数:68次 满意回答 2012-09-25 17:44 添加一个模块,输入以下代码: Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, By...

用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片?
用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片? 请教:用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片, 2012-09-25 15:54 提问者: |浏览次数:68次 满意回答 2012-09-25 17:44 添加一个模块,输入以下代码: Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long Public Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long Public Const GWL_WNDPROC = -4& Public Const WM_MOUSEWHEEL = &H20A Public Type POINTAPI x As Long y As Long End Type Public OldWindowProc As Long Public ohwnd As Long Public Function NewWindowProc(ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long On Error Resume Next If Msg = WM_MOUSEWHEEL Then Dim CurPoint As POINTAPI, hwndUnderCursor As Long GetCursorPos CurPoint hwndUnderCursor = WindowFromPoint(CurPoint.x, CurPoint.y) If hwndUnderCursor = ohwnd Then If wParam = -7864320 Then If Form1.Picture1.Width < Form1.ScaleWidth Then Form1.Picture1.Width = Form1.Picture1.Width + 300 If Form1.Picture1.Height < Form1.ScaleHeight Then Form1.Picture1.Height = Form1.Picture1.Height + 240 ElseIf wParam = 7864320 Then If Form1.Picture1.Width > 600 Then Form1.Picture1.Width = Form1.Picture1.Width - 300 If Form1.Picture1.Height > 480 Then Form1.Picture1.Height = Form1.Picture1.Height - 240 End If End If Else NewWindowProc = CallWindowProc(OldWindowProc, hwnd, Msg, wParam, lParam) End If End Function 在Form1中放入一个Picture1控件,然后输入以下代码: Private Sub Form_Load() Picture1.AutoRedraw = True Picture1.Picture = LoadPicture("e:\tmp\cd1.gif") '图片文件名,自己改 Picture1.Move 0, 0, 6000, 4800 ohwnd = Picture1.hwnd OldWindowProc = GetWindowLong(Picture1.hwnd, GWL_WNDPROC) Call SetWindowLong(Picture1.hwnd, GWL_WNDPROC, AddressOf NewWindowProc) End Sub Private Sub Picture1_Resize() Picture1.PaintPicture Picture1.Picture, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight End Sub
本文档为【用vb编程如何实现用鼠标滚轮扩大和缩小窗体上的图片?】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_435706
暂无简介~
格式:doc
大小:15KB
软件:Word
页数:3
分类:其他高等教育
上传时间:2017-09-30
浏览量:112