Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Рабочая область рабочего стола Добавлено: 13.05.07 22:43  

Автор вопроса:  Sef
Везде есть Api, как сменить расширение экрана. Но при её использовании рабочая область не меняется. К примеру при переходе с 1152*864 на 800*600 все иконки, которые были внизу, там и остались и их не видно. Как поменять эту область?

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 Gogic



Вопросов: 38
Ответов: 121
 Профиль | | #1 Добавлено: 13.05.07 23:45
Привязать иконки к окну рабочего стола в относительных координатах и при смене разрешения таскать за собой, подобно тому, как описываются перемещения элементов на форме при событии Resize.

Ответить

Номер ответа: 2
Автор ответа:
 intel-DX



ICQ: 445091742 

Вопросов: 4
Ответов: 169
 Профиль | | #2 Добавлено: 14.05.07 00:18

Private Declare Function ChangeDisplaySettings Lib "user32.dll" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwFlags As Long) As Long
Private Declare Function EnumDisplaySettings Lib "user32.dll" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As String, ByVal iModeNum As Long, lpDevMode As DEVMODE) As Long

Const DM_BITSPERPEL = &H40000
Const DM_PELSWIDTH = &H80000
Const DM_PELSHEIGHT = &H100000
Const CCHDEVICENAME = 32
Const CCHFORMNAME = 32

Private Type DEVMODE
dmDeviceName As String * CCHDEVICENAME
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
dmDriverExtra As Integer
dmFields As Long
dmOrientation As Integer
dmPaperSize As Integer
dmPaperLength As Integer
dmPaperWidth As Integer
dmScale As Integer
dmCopies As Integer
dmDefaultSource As Integer
dmPrintQuality As Integer
dmColor As Integer
dmDuplex As Integer
dmYResolution As Integer
dmTTOption As Integer
dmCollate As Integer
dmFormName As String * CCHFORMNAME
dmUnusedPadding As Integer
dmBitsPerPel As Integer
dmPelsWidth As Long
dmPelsHeight As Long
dmDisplayFlags As Long
dmDisplayFrequency As Long
End Type

Public BackVal As Long


Private Sub Command1_Click()
Dim MyDevMode As DEVMODE
MyDevMode.dmSize = Len(MyDevMode)
BackVal = EnumDisplaySettings(vbNullString, ENUM_CURRENT_SETTINGS, MyDevMode)
MyDevMode.dmPelsWidth = 800
MyDevMode.dmPelsHeight = 600
BackVal = ChangeDisplaySettings(MyDevMode, CDS_TEST)

End Sub

Ответить

Номер ответа: 3
Автор ответа:
 Sef



Вопросов: 3
Ответов: 6
 Профиль | | #3 Добавлено: 18.05.07 18:37
Спасибо intel-DX

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам