2017-09-26 70 views
0

我假設答案很簡單,但問題在於,我的選項菜單包含兩個部分,即普通設置和高級設置,高級設置通過按進入按鈕,相當基本。這將使表單更大地揭示進一步的設置,但我唯一的問題是在不同的分辨率下製作更大的表單並不會因同樣的因素而使其更大 - 將我說的上下文放在一起,如果我增加了我的大小在標準的1080p顯示器上顯示出來,然後在768的筆記本電腦上以1366的分辨率運行我的程序,這個表格將比我在1080p分辨率屏幕上繪製的要小得多。VB.NET - 通過屏幕分辨率更改表單大小:

繼承人我使用增加窗體大小代碼:

Private Sub Advance_btn_Click(sender As Object, e As EventArgs) Handles Advance_btn.Click 
    If advanced = 0 Then 
     Me.Size = New Drawing.Size(262, 198) ' will increase form size 
     Advance_btn.Text = "<" ' text for button changes to know i have pressed the button - (to '<') 
     advanced = 1 
    ElseIf advanced = 1 Then 
     Me.Size = New Size(262, 85) ' will decrease form size 
     Advance_btn.Text = ">" ' text for button changes to know i have pressed the button - (to '>') 
     advanced = 0 
    End If 
End Sub 

的形式也無國界,如果使有些差別,謝謝。

+1

使用Screen.PrimaryScreen.Bounds [寬度/高度]獲得屏幕尺寸非常簡單直觀,您根據這些邊界縮放表單的大小取決於您 – soohoonigan

回答

-1
 Me.Height = Screen.PrimaryScreen.Bounds.Height 
     Me.Width = Screen.PrimaryScreen.Bounds.Width * 0.6 

在這個例子中,我使用了多年,寬度設置爲屏幕寬度的60%。這是在IF語句中,我檢查用戶是否具有4K顯示器,如果不是,則在應用程序啓動時設置全屏模式。你可以用你的繪畫區做類似的事情。

+0

此代碼是錯誤的。它對錶單在主屏幕上顯示的假設進行了硬編碼,這不一定是正確的。考慮多監測系統。 –

+0

我確實有一個多顯示器系統,實際上我們所有的電腦都有兩個顯示器。一些有4K作爲主要顯示器,其他都是全高清。所以我知道你的意思,但實際上沒有問題。經過多年的測試。 –

+0

該代碼無法在該方案中工作。它使用'PrimaryScreen'對象。如果輔助屏幕使用與主屏幕不同的分辨率,或者表單不在主屏幕上,則設置了錯誤的尺寸。 –