2008-08-30 67 views
3

我有一个VB6.0项目,我想在VB.Net中进行转换。VB.NET表单高度问题

在我的VB6.0应用程序中,一些MDI子窗体的高度是17000,宽度是13000.现在我想在VB.Net窗体中设置相同的窗体大小,但它允许最大窗体宽度= 1036,height = 780分辨率为1024x768。

如何增加具有相同分辨率的表单大小?

另外我想打印这个,所以我不能使用vb.net窗体的自动滚动属性。

Thaks

回答

0

我认为VB6单位不与VB.Net一个是相同的。所以你必须做一个转换。

5

你的经典VB单位是在所谓的“缇”。你很可能能够将这些数字除以12或15(取决于你使用的是大字还是小字),并且你会得到一定数量的像素。

1

我做了这方面的一些谷歌搜索,以及跨this来到..

是,这种规模的形式是有限的 到桌面(更多 比较特别 SystemInformation.MaxWindowTrackSize)的大小。 这是在Form.SetBoundsCore 受保护的虚拟方法中完成的。这个 的行为不能改变,或者至少在 没有大量的工作和 使用PInvoke。

还支持here

形式的设计师 大小由你的屏幕大小的限制。

这听起来像你在1600x1200有你的显示器 ,因此设计人员不会 让你去大则1212

如果你有你的显示器为1280x1024, 那么设计师会不会让你去 更大然后1036

我真的不知道为什么 在设计形式大小限制为 屏幕尺寸,因为我可以在 机具有更大的屏幕尺寸上部署 他们我的开发机器。 ..

所以看起来像它无法做到的..那是一些奇怪的行为,因为它看起来像你只限于无论你的dev的机器是..

我认为做的唯一事情是这样的,以大小设置为可能的最大分辨率,设置表单大小,然后恢复,但不会再次触摸大小。

1

您在设计的限制,但不是在代码:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    Me.Height = 17000 'or whatever you need 
    Me.Width = 13000 
End Sub 
+0

我刚刚测试了这个建议。这个建议在form_load事件中不起作用。根据问题,表单的初始大小将被限制为屏幕大小。 – 2008-10-08 21:41:38