查看: 566  |  回复: 0
  VB6 利用API获得窗口位置
楼主
发表于 2023年5月6日 20:14

新建From1(窗体),新建Timer1(Timer),代码:

Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long

Private Sub Form_Load()
    SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 1
End Sub

Private Sub Timer1_Timer()
    Dim wnrect As RECT
    GetWindowRect GetForegroundWindow(), wnrect
    Me.Caption = "Top = " & wnrect.Top & " " & "Left = " & wnrect.Left & Chr(13) & "Bottom = " & wnrect.Bottom & " " & "Right = " & wnrect.Right
End Sub

移动窗口,可以看到窗体标题变换文字。

您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2024 MaNongKu.com