以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  picturebox的缩放位置问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=45352)

--  作者:kan6465
--  发布时间:2014/1/23 10:03:00
--  picturebox的缩放位置问题
请问大大

如果我要代码缩放的picturebox
怎么令到这个picturebox的中心位置不变呢,也就是向四周扩张
现在默认的是想下右扩张,这样会影响到旁边的picturebox

在不用重新设置位置的情况下,有模式可以设置吗,可以做到吗

--  作者:Bin
--  发布时间:2014/1/23 10:05:00
--  
使用代码计算一下,你扩展的幅度.然后移动起始点即可.

比如你原本 left=50  top=50    图片大小50*50  然后你增大为100*100  你可以设置 left=25 top=25 这样就中心点不变了.

--  作者:kan6465
--  发布时间:2014/1/23 10:13:00
--  
这样很不方便

如果我有50个picture位置都不同呢 

最好有缩放的对齐模式可以设置呢 

--  作者:Bin
--  发布时间:2014/1/23 10:17:00
--  
大哥,可以计算的啊. 不要那么死板啊.
例如点击图片放大,保持中心,只需要在Click事件里放入如下代码.   有多个图片控件,在窗口全局事件写即可.
Dim w As Integer=e.Sender.Width
Dim h As Integer=e.Sender.Height
e.Sender.Width=e.Sender.Width*2
e.Sender.Height=e.Sender.Height*2
e.Sender.Left=e.Sender.Left-(e.Sender.Width-w)/2
e.Sender.Top=e.Sender.Top-(e.Sender.Height-h)/2

--  作者:kan6465
--  发布时间:2014/1/23 10:29:00
--  
好的 学到东西了
谢谢大大图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2014/1/23 10:30:00
--  
.
图片点击可在新窗口打开查看此主题相关图片如下:123.gif
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.table



--  作者:lsy
--  发布时间:2014/1/23 10:45:00
--  
Dim w As Integer = e.Sender.Width
Dim h As Integer = e.Sender.Height
Dim l As Integer = e.Sender.Left
Dim t As Integer = e.Sender.Top
e.Sender.Width = e.Sender.Width * 1.1
e.Sender.Height = e.Sender.Height * 1.1
\'e.Sender.Width = e.Sender.Width * 0.9
\'e.Sender.Height = e.Sender.Height * 0.9
e.Sender.Left = l + (w - e.Sender.Width) / 2
e.Sender.Top = t + (h - e.Sender.Height) / 2