Что я могу сделать, чтобы получить окна, которые вышли за пределы экрана?


67

У меня странная проблема с машиной, когда иногда, когда окно инициализируется, оно выходит за пределы экрана и выходит из поля зрения. Я не могу щелкнуть по нему, чтобы перетащить его обратно в поле зрения.

Есть ли программы или исправления для этого в Windows XP?

Я знаю, что Windows и другие программы любят сохранять местоположения окон после их закрытия, поэтому, когда вы снова открываете их, они находятся в том месте, где они были закрыты, и я не вижу ни одного из этих окон, которые были закрыты за пределами экрана.


8
Возможно, было бы полезно отметить, что как ALT + SPACE, M, так и щелчок правой кнопкой мыши на приемах панели задач в ответах также работают на оконных менеджерах большинства UNIX-подобных систем, что делает его относительно универсальным приемом. Кроме того, если у вас даже есть небольшое подмножество окна в системах UNIX, вы обычно можете нажать ALT + CLICK, чтобы перетащить его. Я знаю, что это специфический для Windows вопрос, поэтому я не оставляю его как полноценный ответ, но он может помочь кому-то из Google.
Майкл Трауш

Вы недавно подключили второй монитор? Или, может быть, проектор? Это происходит, когда вы добавляете второе устройство монитора и растягиваете свой рабочий стол (иногда)
Адам Ричардсон

На вопрос 6 месяцев назад, так что «см. Также»: superuser.com/questions/239891/…
Кристофер Галпин

Ответы:


101

Выделите на панели задач, нажмите ALT+, SPACEзатем M. Это подготовит его к движению. Затем используйте клавиши со стрелками для перемещения и нажмите Enter, когда закончите.

Попробуйте удерживать Shiftключ во время закрытия. Это часто сохраняет местоположение.


4
Кроме того, щелкните правой кнопкой мыши элемент программы на панели задач, выберите «Переместить», затем, не перемещая мышь снова, нажимайте клавиши со стрелками вправо, влево, вверх или вниз, в зависимости от ситуации, до появления окна.
music2myear

Спасибо! Это сработало отлично. Будет отмечен как ответ по истечении времени ожидания.
Кробертс

1
@qroberts Я не уверен, почему он не универсален, но трюк Shift хорошо работает с некоторыми программами, сохраняя позицию, когда она не может быть сохранена. Спасибо, что отметили это. Я ценю это.
Котро

18
После нажатия Alt + пробел, а затем с помощью одной из кнопок со стрелками, чтобы немного переместить ее, вы также можете просто переместить мышь, и окно будет прыгать под вашим курсором мыши.
Бен Ричардс

1
@qroberts @KCotreau: трюк переключения работает, только если программа просит CreateWindowEx(или, в .Net, FormStartLocation) использовать начальную позицию по умолчанию. Существует множество программ (и, возможно, фреймворков?), Которые не используют расположение по умолчанию, либо по уважительной причине, либо потому, что разработчик забыл / сделал ошибку / не знает ничего лучше (это не ошибка, которую вы обычно делаете обратите внимание ...)
BlueRaja - Дэнни Пфлюгофт

18

У меня есть отвратительное решение :-) Скрипт на Python, который проходит через все внеэкранные окна и предлагает переместить их в левый верхний угол:

import winxpgui, sys, win32con

screen_width = 1920
screen_height = 1200

def WindowsListEnum(hwnd, data):
    pos = winxpgui.GetWindowRect(hwnd)
    left, top = 0, 0
    if pos[0] < 0 or pos[0] > screen_width:
        left = 10
    if pos[1] < 0 or pos[1] > screen_height:
        top = 10
    if left or top:
        print winxpgui.GetWindowText(hwnd), ',', pos, '->', (top, left, pos[2], pos[3])
        if sys.stdin.read(1) == 'y':
            winxpgui.SetWindowPos(hwnd, win32con.HWND_NOTOPMOST, left, top, pos[2]-pos[0], pos[3]-pos[1], win32con.SWP_SHOWWINDOW)

print "press 'y' to move the window, anything else to continue\n"
winxpgui.EnumWindows(WindowsListEnum, None)

Вам нужны Python и Win32all .


4
Да, вы можете загрузить и установить материал (3-5 минут), ИЛИ вы можете использовать сочетания клавиш (3-5 секунд) ...
TFM

2
Я обычно тоже использую ярлык, но иногда он не работает или мне нужно переместить больше Windows одновременно.
Лукас Ценовский

3
Полностью перебор, но мне это нравится
Гари

6
+1. Это полезно, если окно полностью за кадром и в неизвестном направлении (или очень далеко от экрана).
Питер Мортенсен

@Peter: в этом случае вы могли бы использовать alt-space, за которым следует x, что увеличивает окно
Rabarberski

14

В Windows 7 вы можете выбрать окно, а затем Win+ клавиши со стрелками, чтобы переместить его.


3
Обратите внимание, что вопрос задавался о Windows XP, но это отличный трюк для Windows 7, который я иногда использую сам.
nhinkle

9

Вы также можете щелкнуть правой кнопкой мыши на панели задач и выбрать один из вариантов меню окна. В Windows 7 они:

  • Каскадные окна
  • Показать Windows Stacked
  • Показать окна бок о бок

Предыдущие версии использовали немного другие термины, но делали то же самое. Некоторые версии будут располагать только минимизированные окна / приложения, если я правильно помню.


введите описание изображения здесь


Этот метод также влияет на все остальные видимые окна.
Synetech

Это правда @Synetech, но когда вы отчаянно пытаетесь вернуть закадровое окно во время презентации, вы не возражаете запутаться ...
Иштван Захар

6
  1. Установите фокус на окно, нажав на панели задач или ALT+ TAB.

  2. ALT+ SPACEвызвать системное меню.

  3. M выбрать Move.

  4. Нажмите клавишу со стрелкой один раз, чтобы начать перемещение окна.

  5. Двигай мышью.

Окно быстро появится для просмотра.

Это быстрее, чем использование стрелок для перемещения окна целиком, особенно если оно далеко от экрана.


Вам не нужны обе оси; подойдет любая клавиша со стрелкой.
Synetech

@Synetechinc: я только что подтвердил это в Windows 7; Ты прав. Я изучил эту последовательность очень давно, поэтому она могла потребоваться в более ранних версиях Windows / NT. Если у кого-то есть такая информация, я обновлю свой ответ.
Джей Базузи

Хм, это кажется странным, я не могу себе представить, почему потребуются оба. Я знаю, что любой клавиши со стрелкой было достаточно, по крайней мере, до Win95. Может быть, вы просто нажали и то и другое и подумали, что именно это и сделали, например, нажимали кучу клавиш в игре, чтобы что-то сделать, и не зная, какая из них сделала свое дело, так что вы просто повторяете их каждый раз. :-)
Synetech

5

Еще один совет: после того, как вы начали перемещать его с помощью клавиатуры (один пиксель), закончите простым перемещением мыши. Это намного быстрее.


2

@qrobers как отмечено StevenV

Щелкните правой кнопкой мыши на кнопке окна панели задач и скажите

  • Каскадные окна (накладывает окна друг на друга, показывая заголовки окон)
  • Вертикальная мозаика Windows (делает все возможное, чтобы все открытые окна были изменены на вашем рабочем столе)
  • Плитка Windows по горизонтали (делает все возможное, чтобы все открытые окна были изменены на вашем рабочем столе)

Это, безусловно, самый простой. Я использую его в нескольких мониторах на своем ноутбуке, когда отключается питание, и я теряю второй монитор. Я могу вытащить все окна на свой главный монитор (ноутбук). Очень легко, быстро.


Этот метод также влияет на все остальные видимые окна.
Synetech

0

Некоторые приложения не реагируют на активацию окна плюс использование alt + space + m, например, FSCapture (снимок экрана fasttstone). WindowSpace (бесплатная пробная версия ) работал, чтобы переместить его обратно на экран.


0

Техника, которая часто работает, такова:

  • Щелкните правой кнопкой мыши на панели задач и выберите «Показать рабочий стол»
  • Щелкните правой кнопкой мыши на проблемной программе и выберите «Восстановить».
  • Нажмите правой кнопкой мыши на задачу другой программы и выберите «Восстановить».
  • Щелкните правой кнопкой мыши на панели задач и выберите «Каскадные окна»

Обычно это приводит к тому, что параметры окна помещаются на текущий экран. Наличие только двух активных окон сохраняет большинство позиций окна без изменений.


0

Существует (или была) очень хорошая программа под названием Shove-It для Windows. Раньше был на www.phord.com, но сейчас его сняли. По сути, просто запустите его, и он автоматически обнаружит все окна, которые открылись с их содержимым, даже частично за пределами экрана, и либо «вытолкнет» их обратно в область просмотра портала, либо измените их размер при необходимости, все автоматически. Мне удалось найти старую бета-версию, которая является бесплатной, поделится через Sugarsync. https://www.sugarsync.com/pf/D290041_6932435_98576


3
Просто к вашему сведению, большинство пользователей здесь скептически относятся к загрузке случайного zip-файла из Интернета, даже с фоном.
Моисей

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.