VB 运行时如何使picture控件随窗体放大缩小

作者&投稿:弭禄 (若有异议请与网页底部的电邮联系)
vb里面怎么让窗体中的控件的位置随着窗体界面的大小变化而变化~

在窗体Resize事件中根据窗体的宽度改变控件的宽高就行了。
例如
Private Sub Form_Resize()
picture1.width=form1.width/10
picture1.height=form1.height/10

这样控件根据窗体的大小缩放。同样,相对位置也可以这样

这个是很麻烦的,你首先需要先定义好picturebox中的每个控件与picturebox的位置的比例和大小的比例,注意是比例,比如说是1/10还是6%,然后在Form_Resize中把picturebox中的每个控件的大小和位置都按比例改变。

Option Explicit
Dim pT!, pL!, pW!, pH!

Private Sub Form_Load()
'保存picture控件的Top、Left、Width和Height属性
pT = Picture1.Top
pL = Picture1.Left
pW = Picture1.Width
pH = Picture1.Height
End Sub

Private Sub Form_Resize()
Form1.ScaleHeight = 4000
Form1.ScaleWidth = 4000
'设置Picture1的位置和大小
Picture1.Move pL, pT, pW, pH
End Sub
其中
Form1.ScaleHeight = 4000
Form1.ScaleWidth = 4000
中的4000你根据自己窗体和控件初始大小调整,需要自己调整的。

在窗体Resize事件中根据窗体的宽度改变控件的宽高就行了。
例如
Private Sub Form_Resize()
picture1.width=form1.width/10
picture1.height=form1.height/10

这样控件根据窗体的大小缩放。同样,相对位置也可以这样

首先在设计时确定窗体与Picturebox之间的关系,例如Picture1.Left=? Picture1.Top=? Picture1.Width 与 me.Width 的比例关系,Picture1.Height 与 me.Height 的比例关系
那么,在Form_Resize事件中就可以按比例放大或缩小控件尺寸,但控件位置不变,例如
Dim X As Single, Y As Single

Private Sub Form_Load()
X = Picture1.Height / Me.Height
Y = Picture1.Width / Me.Width
End Sub

Private Sub Form_Resize()
Picture1.Height = Me.Height * X
Picture1.Width = Me.Width * Y
End Sub

Private Sub PicPrintZB()
Picture1.Cls
Picture1.Scale (-110, 110)-(110, -110)
Picture1.CurrentX = 105: Picture1.CurrentY = 20: Picture1.Print "x"
Picture1.CurrentX = 10: Picture1.CurrentY = 105: Picture1.Print "y"
For I = -100 To 100 Step 20
If I <> 0 Then
Picture1.CurrentX = 1: Picture1.CurrentY = 7: Picture1.Line -(I, 0)
Picture1.CurrentX = I - 5: Picture1.CurrentY = -5: Picture1.Print I / 10
Else
Picture1.CurrentX = -3: Picture1.CurrentY = -5: Picture1.Print 0
End If
Next I
For I = -100 To 100 Step 20
If I <> 0 Then
Picture1.CurrentX = -15: Picture1.CurrentY = I + 5: Picture1.Print I / 10
Picture1.CurrentX = 7: Picture1.CurrentY = I: Picture1.Line -(0, I)
End If
Next I
End Sub

Private Sub Form_Load()
Picture1.AutoRedraw = True
End Sub

Private Sub Form_Resize()
Picture1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
PicPrintZB
End Sub

设置picturebox的Autosize为true即可


襄垣县19658408151: VB 运行时如何使picture控件随窗体放大缩小 -
程曹米氮: 在窗体Resize事件中根据窗体的宽度改变控件的宽高就行了.例如 Private Sub Form_Resize() picture1.width=form1.width/10 picture1.height=form1.height/10 这样控件根据窗体的大小缩放.同样,相对位置也可以这样

襄垣县19658408151: 如何在vb中使用图片控件,并在运行时单击图片变为另一张图片?谢谢了 -
程曹米氮: Private Sub Picture1_Click() Picture1.Picture = LoadPicture("") '另外一张图片 End Sub

襄垣县19658408151: VB中如何用picture控件实现图片切换!谢谢! -
程曹米氮: 须加一个文件列表控件,声明静态变量I一个初始值0.for k=0 to filelistbox1.listcount-1 if i filelistbox1.listcount- 1 then 图片加载代码段:i= i+1:Exit for else i=0 end if next 把代码段继续优化能够得到目的

襄垣县19658408151: VB6 如何让程序在启动时image控件读取根目录中的图片. -
程曹米氮: Private Sub Form_Load()Image1.Picture = LoadPicture(App.Path \...

襄垣县19658408151: VB IMAGE 控件如何使用? -
程曹米氮: 单击“工程”-“部件”,选中Microsoft Windows Common Control 6.0并确定.这时,我们要用到的控件就出现在左边的工具栏上了.要做工具栏,首先需要一个叫ImageList的控件来装载图像.在程序界面上添加它,然后右键单击此控件,左...

襄垣县19658408151: VB里面如何使图片自适应picture控件的大小? -
程曹米氮: Picture1.PaintPicture LoadPicture("图片地址"), 0, 0, Picture1.ScaleWidth,Picture1.ScaleHeight

襄垣县19658408151: VB中picture的move方法的使用 -
程曹米氮: 使用move方法时,如果加括号,那么move前面要加call,就像调用function或sub过程一样!privatesubtimer1_timer() callcommand1.move(command1.left+10,command1.top+10,command1.width+10,command1.height+10) endsub

襄垣县19658408151: 在VB中,如何利用对话框在PICTURE控件中打开图片,代码是什么 -
程曹米氮: 你可以先把想打开的图片放到PICTURE控件中,设置它的VISIBLE属性为FALSE,然后设置事件再把它的VISIBLE属性变为TURE就可以了.

襄垣县19658408151: vb中picture控件添加静态图片的方法 -
程曹米氮: 设计界面的时候设定picture控件的picture属性,或者运行时用函数装载:Picture1.Picture = LoadPicture("图片路径")

襄垣县19658408151: vb中如何实现对picture控件载入图像大小的控制
程曹米氮:把picture的AutoSize设为True,如果你想调大小的话我建议你用image控件,把Stretch设为True,图片就能随image控件的大小自动调了

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网