如果电脑接了多个屏幕 vb6的窗体怎么才能知道自己在哪个屏幕? 又怎么知道当前屏幕的分辨率?
现在的实际问题是,无论我的窗体在哪个屏幕中,调用Screen对象,都是取得的第一个屏幕的信息
现在的实际问题是,无论我的窗体在哪个屏幕中,调用Screen对象,都是取得的第一个屏幕的信息
解决方案 »
- 如何给动态生成的spread加快捷键
- 关于list项目排除相同项目的问题|||在线等待|||
- vb 操作网页 怎样获得网页中每个frame框架中的各个元素!
- 急,窗口间如何传递参数的呢?
- 实时错误 '-2147221164 (80040154)'求助,急急!!先谢了。
- vb如何实现操作.DBF文件。100分求教
- 有谁有没有木马的全部代码能不能给我一个最好有远程抓屏的因为我做了一个远程抓屏时图像不能预览啊
- access排序的问题急!在线等!
- 再次求救! DataGrid控孔数据源不支持Microsoft Jet.OLEDB.4.0数据引擎问题
- 关于填充色的问题
- 请教vb如何实现检测一个URL是否有效?
- vb 变量声明Public Property Get 和Public Property let的 区别
检测有几个屏幕以及每个屏幕的rect属性如下
Option ExplicitPublic Const MONITORINFOF_PRIMARY = &H1
Public Const MONITOR_DEFAULTTONEAREST = &H2
Public Const MONITOR_DEFAULTTONULL = &H0
Public Const MONITOR_DEFAULTTOPRIMARY = &H1
Public Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Public Type MONITORINFO
cbSize As Long
rcMonitor As RECT
rcWork As RECT
dwFlags As Long
End TypePublic Declare Function GetMonitorInfo Lib "user32.dll" Alias "GetMonitorInfoA" _
(ByVal hMonitor As Long, ByRef lpmi As MONITORINFO) As Long
Public Declare Function EnumDisplayMonitors Lib "user32.dll" (ByVal hdc As Long, _
ByRef lprcClip As Any, ByVal lpfnEnum As Long, ByVal dwData As Long) As Long
Public Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, ByVal X As _
Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal _
bRepaint As Long) As Long
Public Scr() As RECT
Public ScrSum As Long
Public Function MonitorEnumProc(ByVal hMonitor As Long, ByVal hdcMonitor As Long, _
lprcMonitor As RECT, ByVal dwData As Long) As Long
Dim MI As MONITORINFO, R As RECT
MI.cbSize = Len(MI)
GetMonitorInfo hMonitor, MI
R = MI.rcWork
ScrSum = ScrSum + 1
ReDim Preserve Scr(ScrSum)
Scr(ScrSum) = R
'If CBool(MI.dwFlags = MONITORINFOF_PRIMARY) Then '第一显示器
' MoveWindow Form1.hwnd, R.Left, R.Top, R.Right - R.Left, R.Bottom - R.Top, 1&
'Else
' MoveWindow Form2.hwnd, R.Left, R.Top, R.Right - R.Left, R.Bottom - R.Top, 1&
'End If
MonitorEnumProc = 1
End FunctionPublic Sub CheckMonitor()
ScrSum = 0
EnumDisplayMonitors ByVal 0&, ByVal 0&, AddressOf MonitorEnumProc, ByVal 0&
End Sub