如何获得一个窗体的大小(宽,高)和初始位置,
  还有怎样用api改变这个窗体的大小和位置!比如记事本!

解决方案 »

  1.   

    搞不明白这是什么意思?form.width form.height
    form.move  不成?
      

  2.   

    初步设想用FindWindow获得窗口句柄,然后用PostMessage或sendmessage发消息
    WM_MOVE  移动一个窗口  WM_SIZE 一个窗口的大小我写写看
      

  3.   

    试验成功,用MoveWindow 即可
    Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
        ByVal lpClassName As Any, _
        ByVal lpWindowName As String) As Long
    Private 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 Function MoveSomeWindow(ByVal sWindowName As String, ByVal iTop As Integer, ByVal iLeft As Integer, ByVal iWidth As Integer, ByVal iHeight As Integer)
        Dim TargetHwnd As Long
         TargetHwnd = FindWindow(0&, sWindowName)
        If TargetHwnd = 0 Then Exit Function
        
        MoveWindow TargetHwnd, iTop, iLeft, iWidth, iHeight, 1
        DoEventsEnd Function
      

  4.   


    用FindWindow获得hwnd
    如何通过这个hwnd获得该hwnd所对应窗体的位置及大小(高,宽)?