2008-08-30 81 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