PDA

View Full Version : بدست اوردن Resolution دسکتاپ



omid-vbAuto
سه شنبه 02 آذر 1389, 21:26 عصر
دوستان ما چطوری می تونیم Resolution دسکتاپ رو بدست بیاریم.و سپس بتونیم Resolution مورد نظرمون رو اعمال کنیم؟

Felony
سه شنبه 02 آذر 1389, 22:22 عصر
Dim intX As Integer = Screen.PrimaryScreen.Bounds.Width
Dim intY As Integer = Screen.PrimaryScreen.Bounds.Height

mansourii
سه شنبه 02 آذر 1389, 23:01 عصر
احسنت به مجتبي

براي بدست آوردن خروجي
dim MYScreenWidth as integer = My.Computer.Screen.Bounds.Width
dim MYScreenHeight as integer= My.Computer.Screen.Bounds.Height


حالا يك پارامتر تعريف ميكني و اين پارامتر ها رو به يك (TextBox ) متصل ميكني

براي بدست آوردن ورودي


Label22.Text = My.Computer.Screen.Bounds.Width & "*" & My.Computer.Screen.Bounds.Height


:چشمک: اگه نامفهومه بگيد تا يك Program براتون بذارم.

omid-vbAuto
سه شنبه 02 آذر 1389, 23:28 عصر
از دوستان عزیز خیلی ممنونم.


اما من هنوز نفهمیدم چطوری می تونم Resolution جاری رو به اون چیزی که می خوام تغییر بدم.؟؟؟

Saman_12
چهارشنبه 03 آذر 1389, 13:30 عصر
بدست آوردن :

Dim DesSize As Size = SystemInformation.VirtualScreen.Size

تغییر دادن :

Private Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Integer, ByVal iModeNum As Integer, ByRef lpDevMode As DEVMODE) As Boolean
Private Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (ByRef lpDevMode As DEVMODE, ByVal dwFlags As Integer) As Integer

Const DM_PELSWIDTH As Integer = &H80000
Const DM_PELSHEIGHT As Integer = &H100000
Const CCFORMNAME As Short = 32
Const CCDEVICENAME As Short = 32

Private Structure DEVMODE
<VBFixedString(CCDEVICENAME), System.Runtime.InteropServices.MarshalAs(System.Ru ntime.InteropServices.UnmanagedType.ByValArray, SizeConst:=CCDEVICENAME)> Public dmDeviceName() As Char
Dim dmSpecVersion As Short
Dim dmDriverVersion As Short
Dim dmSize As Short
Dim dmDriverExtra As Short
Dim dmFields As Integer
Dim dmOrientation As Short
Dim dmPaperSize As Short
Dim dmPaperLength As Short
Dim dmPaperWidth As Short
Dim dmScale As Short
Dim dmCopies As Short
Dim dmDefaultSource As Short
Dim dmPrintQuality As Short
Dim dmColor As Short
Dim dmDuplex As Short
Dim dmYResolution As Short
Dim dmTTOption As Short
Dim dmCollate As Short
<VBFixedString(CCFORMNAME), System.Runtime.InteropServices.MarshalAs(System.Ru ntime.InteropServices.UnmanagedType.ByValArray, SizeConst:=CCFORMNAME)> Public dmFormName() As Char
Dim dmUnusedPadding As Short
Dim dmBitsPerPel As Short
Dim dmPelsWidth As Integer
Dim dmPelsHeight As Integer
Dim dmDisplayFlags As Integer
Dim dmDisplayFrequency As Integer
End Structure

Public Sub ChangeResolution(ByRef iWidth As Single, ByRef iHeight As Single)
Dim DevM As DEVMODE
Dim A As Boolean
Dim i As Integer
Dim b As Integer

Do
A = EnumDisplaySettings(0, i, DevM)
i = i + 1
Loop Until (A = False)

DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT
DevM.dmPelsWidth = iWidth
DevM.dmPelsHeight = iHeight

b = ChangeDisplaySettings(DevM, 0)


End Sub