男的做b超需要憋尿吗:vb中调整窗体大小的方法

来源:百度文库 编辑:高校问答 时间:2024/05/01 06:03:27
我只有一个form1,其中只有一个picture1
我把两个的scalemode都调整为pixel可是两者的width和height却差很远
一个是300多一个是4000多
(300多像素差不多,可是4000多是怎么出来的?)
问一下为什么scalemode一样的情况下为什么长宽的数值却不同?

和scalewidth scaleheight有什么样的关系?

我想准确调整form的长宽的话,应该怎么做?
第一个说得没错,可是没解决问题
第二个前面说得没错,可是程序不对,不过还是感谢你写这么多
做法我已经会了,如果还有人有兴趣的话可以写写程序,对了的话分就给你

这是因为窗体的高宽单位被VB设定为“缇”,而picture被设定为“像素”引起的。
这和scalewidth和scaleheight没有关系,这两者是用来取得对象的长宽,得到的结果单位会根据你的窗体和picture框设定的scalemode来确定。
如果你要准确调整form,最好的办法是手动输入你想要的长宽,如在窗体上加两个text设定长宽,一个按钮来提交修改——不过一般人习惯了用象素来单位,所以你需要先把象素换算为缇,然后再输入text中。如果是要满足视觉要求,那么在设计时直接拖曳窗体是不错的方法,因为一般运行时出现的窗体大小就是你设计时的窗体大小。

以下是一个实现精确定义窗体大小的方法,你输入的单位是象素:
1、建立一窗体,加入两个text和一个按钮。
2、设置text1输入窗体高度,text2输入窗体宽度。
3、对按钮加入以下代码:
Private Sub Command1_Click()

Form1.Height = CInt(Text1.Text) * (Form1.Height / Form1.ScaleHeight)
Form1.Width = CInt(Text1.Text) * (Form1.Width / Form1.ScaleWidth)

End Sub
4、运行后只需要在text中输入对应数值,单位为象素,再按按钮,即可改变窗体大小。

你图的单位是像素
VBz中的4000的单位是缇