2012-10-17 32 views
1

我有VB應用程序在加載更改系統的分辨率從1280 * 1024到1024 * 768。當我停止應用程序時,它將分辨率恢復到定義爲NormalRes = Screen.Width/Screen.TwipsPerPixelX的正常分辨率。但是當我第二次同時做它時,它沒有恢復分辨率。Screen.width/Screen.TwipsperpixelX - 不同的值相同

我檢查了代碼,返回的分辨率是1024(水平= 1280)* 1024,因此它不能改變分辨率並保持爲1024 * 768。

什麼錯誤的是,當正常分辨率定義爲Screen.Width/Screen.TwipsPerPixelX

爲什麼它給予不同的值(而不是1280它給1024)。是因爲當我第一次更改分辨率時,它的值發生了變化?
在什麼情況下,值可以有不同的值? ?

尋求你的幫助, 薩蒂什·庫馬爾

回答

1

而不是試圖重新計算的屏幕分辨率,你爲什麼改變了之前不救的分辨率,然後恢復舊當應用程序被關閉。

實施例:

Public Class Form1 
    Dim oldSize As Size 

    Public Sub Form_Load() Handles Form1.Load 
     oldSize = Screen.PrimaryScreen.Bounds.Size 
    End Sub 

    Public Sub Form_Closed() Handles Form1.Closed 
     SetScreenResolution(oldSize) 
    End Sub 

    Public Sub SetScreenResolution(size As Size) 
     ' write your code to change the screen size here 
    End Sub 
End Class 
相關問題