2013-03-21 95 views
2

我正在构建一个窗体,其中每个控件除了滚动条都包含在一个框架中。自然,滚动条移动框架。VB6框架高度

我的窗体的高x宽是12150 X 15800. 框架 - 这是完全包含在框架 - 是18935 X 15285.

尽管事实上,我可以看到表单的边界内的整个框架,它坚持认为它是6785缇TALLER。宽度是有道理的,但是 - 有理由说它是从左到右变窄的515缇。

这是怎么回事?

+2

请确认您是否使用VB6或VB.NET,以及VB.NET是哪个版本?你说什么是“框架”?这不是标准的VB6,也不是WinForms控件。 – Dai 2013-03-21 21:32:30

+1

哎呀!我的错。我正在使用VB6。框架是一个标准的VB6控件;但在VB 2005及更高版本中,它被Panel和GroupBox取代,IIRC。 我一直在玩它,表格似乎报告其大小约1/3的对象(frame1.Height = 15000大约填充form1.Height = 10000)的大小。 – 2013-03-21 22:16:58

+0

假设所有'ScaleModes'都设置为'vbTwips',它可能是Windows DPI支持对您的应用程序的支持。当系统设置为“100%”字体大小时,它会更好吗? – Deanna 2013-03-28 09:45:30

回答

3

我认为ScaleHeight是这方面的罪魁祸首。如果您将表单的ScaleHeight加倍,那么表单Height中的所有控件都会加倍,而表单的高度保持不变。因此,表单中的控件可能有高度,比如说10000和Form = 5000

+0

+1。 OP可能会在表单中无意中设置自定义的“ScaleMode”。一个自定义坐标系,其中y坐标大约是半缇,x坐标是真正的缇。这很容易完成:如果你输入'ScaleHeight'属性,VB6会确定你真的*想要在你的表单中创建一个自定义坐标系 – MarkJ 2013-03-22 14:53:49

+0

YES!谢谢! ScaleMode被设置为0-用户。当我将它改为1-Twips时,控件上的垂直和水平尺寸开始与V&H尺寸的形式一致。 必须在过去的某个时候点击过,无意中。 – 2013-03-22 16:20:32