代码之家  ›  专栏  ›  技术社区  ›  nonopolarity

使用Ruby、Perl或Python,如何“将窗口‘Firefox’移动到屏幕上的坐标(0,0)并调整其大小1024x768”?

  •  1
  • nonopolarity  · 技术社区  · 14 年前

    可以通过窗口标题和exe名称来移动它吗?

    更新:一些Perl示例可以在 Win32::GuiTest 但似乎没有调整大小或移动功能。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Steven    14 年前

    在Ruby中使用 win32-api

    # example.rb
    require 'win32/api'
    include Win32
    
    FindWindow = API.new('FindWindow', 'PP', 'L', 'user32')
    hWnd = FindWindow.call(nil, "firefox")
    if (hWnd == 0)
      puts "firefox not found"
      exit 1
    end
    
    MoveWindow = API.new('MoveWindow', 'LIIIII', 'I', 'user32')
    ret = MoveWindow.call(hWnd, 0, 0, 1024, 768, true)
    if (ret == 0)
      puts "MoveWindow failed"
      exit 1
    end
    
    puts "success"
    

    只有当窗口名为“firefox”时,这才有效 确切地 EnumWindows 枚举所有窗口并找到您要查找的窗口。