Используя Ruby, Perl или Python, как «переместить окно« Firefox », чтобы координаты (0,0) на экране, и измените его размер 1024 x 768»? - PullRequest
1 голос
/ 24 июля 2010

Может ли он быть перемещен как по заголовку окна, так и по имени exe?

Может быть полезна другая информация по перемещению на другом языке.

Обновление: некоторые примеры Perl можно найти в Win32 :: GuiTest но, похоже, нет функций изменения размера или перемещения.

Ответы [ 2 ]

3 голосов
2 голосов
/ 25 июля 2010

Вот способ сделать это в 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" точно (не чувствительно к регистру, когда я тестировал). Поскольку он, вероятно, будет называться по-разному (например, «Google - Mozilla Firefox»), вы, вероятно, захотите использовать EnumWindows , чтобы перечислить все окна и найти то, что вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...