English 中文(简体)
VB.NET表单高度问题
原标题:
  • 时间:2008-08-30 10:01:31
  •  标签:

我有一个VB6.0项目,我想在VB.Net中转换它。

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

如何在相同分辨率下增加表单大小?

我也想从这里打印这个,所以我不能使用vb.net表单的自动滚动属性。

Thaks公司

问题回答

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

我在谷歌上搜索了一下,发现了这个。。

Yes, this size of the form is limited to the size of the desktop (more specifcally SystemInformation.MaxWindowTrackSize). This is done in the Form.SetBoundsCore protected virtual method. This behaviour cannot be changes or at least without a great deal of work and using PInvoke.

也支持此处

The size of the form in the designer is limited by your screen size.

It sounds like you have your display at 1600x1200, hence the designer won t let you go larger then 1212.

If you had your display at 1280x1024, then the designer wouldn t let you go larger then 1036.

I m not really sure why the size of the form in the designer is limited to the screen size, as I may deploy on a machine that has a larger screen size them my development machine...

看起来这是不可能的。。这是一些奇怪的行为,因为看起来你被限制在你的开发机器上。。

我认为唯一的方法是尽可能调整到最大分辨率,设置表单大小,然后恢复,但永远不要再触摸大小。

您在设计器中受到限制,但在代码中不受限制:

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

我认为VB6单元与VB.Net单元不一样。所以你必须进行转换。





相关问题
热门标签