以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [原创]窗体最小尺寸控制问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=13202)

--  作者:Luosen1956
--  发布时间:2011/10/2 18:17:00
--  [原创]窗体最小尺寸控制问题

在 VB 中『窗体最小尺寸控制』是用以下(除去首尾语句后的)三条语句来实现的——

Private Sub Form_Resize()

   On Error Resume Next

   Me.Width = IIf(Me.Width < 8000, 8000, Me.Width)

   Me.Height = IIf(Me.Height < 6000, 6000, Me.Height)

End Sub

上述语句实现了窗体尺寸≥8000×6000,并可以进行最小化操作。

在 Foxtable 中怎样实现这个功能呀?

 


--  作者:110228095
--  发布时间:2011/10/3 9:22:00
--  
我不会,其它高手回复
--  作者:Luosen1956
--  发布时间:2011/10/3 9:41:00
--  

Dim n1%, n2%
n1 = e.Form.Width
n2 = e.Form.Height
n1 = IIf(n1 < 800, 800, n1)
n2 = IIf(n2 < 450, 450, n2)
e.Form.Width = n1
e.Form.Height = n2
e.Form.Controls("Panel1").Width = n1 - 18
e.Form.Controls("PictureBox1").Width = n1 - 18
e.Form.Controls("PictureBox1").Height = n2 - 44

这段程序可以解决三个问题:

⑴ 窗体的尺寸必须≥800×450(像素);

⑵ 容器控件(Panel1)的宽度将随窗口的宽度改变而改变;

⑶ 图片控件(PictureBox1)的宽高尺寸也将随窗体的宽高改变而改变。

现在的关键是:这段程序放在窗体的哪个事件程序中!!!

我没有看见类似【Form_Resize()】一样的事件程序。


--  作者:狐狸爸爸
--  发布时间:2011/10/3 9:55:00
--  

可以在设计窗口的时候指定大小,如果要通过代码,参考:

 

http://www.foxtable.com/help/topics/2312.htm