Переміщення позаекранного вікна назад на екран на Mac OS X


301

Схоже, що Mac OS X 10.6.1 Snow Leopard час від часу залишає деякі вікна поза екраном, особливо коли я відключаю зовнішній монітор від MacBook. Як я можу повернути вікно назад на екран, коли неможливо схопити рядок заголовка та перетягнути його назад на екран?

XvsXP.com рекомендує відрегулювати роздільну здатність екрана вниз, щоб вікна поза екраном «одразу переглянули», а потім відрегулював роздільну здатність екрана до початкових налаштувань. В OS X 10.4 Tiger у мене був сценарій, який повертав усі вікна поза екраном на екран, але в моїх оновленнях до Leopard і зараз Snow Leopard у мене, схоже, немає такого сценарію.

Будь-які кращі рішення там?


Ви можете перевірити дуже схоже запитання: Скиньте Mac OS X Позицію Windows після
деактивації

Я виявив, що іноді допомагає видалення опорних елементів, що порушують, із списку Interface Builder. Я навіть без спроби намагався встановити положення вікна через AppleScript.

Мені вдалося відновити вікно x11, перемістивши нерестовий дисплей на іншу сторону сусіднього дисплея. Іншими словами, у мене було таке розташування зі своїми моніторами [2] [1], і вікно x11 нерестувало поза екраном ліворуч від [1]. Переставляючи: [1] [2], моє вікно x11 вірно з’явилось у вікні [1]. Я в ОС X 10.10.
HAL 9001

Відповіді:


307

Цей метод, здається, працює: натисніть на меню "Вікно", а потім - "Збільшити"


8
Вперше за кілька місяців я просто зіткнувся з цією проблемою з Паралелями. На жаль, вони не мають опції меню масштабування під меню Вікно.
Метью Ранкін

Наступна відповідь має працювати для всіх програм.
Джеймс Робінсон

6
Збільшити мені не вдалося. Тепер вікно просто більше, але все ще не там, де я можу його зайти.
bugloaf

19
Прекрасне рішення, окрім Photoshop, це власна нестандартна реалізація меню Window і не має можливості збільшення. Кривавий Adobe.
Рорі Маккросан

Працював для iTunes. Ніколи раніше не бачив такого варіанту; Я завжди припускав, що це буде називатися "максимальним". Джазі!
Метт Флетчер

121

Я не прочитав цілу нитку, але найпростіший спосіб, який я знайшов, - це змінити роздільну здатність екрана :

Перейдіть до Налаштування системи »Відображення та змінення роздільної здатності.

Це змусить ваш комп'ютер повторно відобразити дисплей та змінити всі відкриті вікна. Потім просто поверніть його до початкових налаштувань роздільної здатності, і все повинно бути на своєму місці.


4
У моєму випадку у додатку (xScope) не було можливості збільшення, і в моїй новій версії Mountain Lion не було функції "виявлення дисплеїв", тому ця порада спрацювала чудово. Дякую!
Іван

+1 працював і на мене. (Про Лева намагаються отримати вікно iPhone Simulator). Збільшення масштабування для цього додатка вимкнено. Що полегшує це те, що на панелі меню натисніть кнопку "Показати" (Налаштування системи-> Дисплеї-> Показати дисплеї в рядку меню) - таким чином ви зможете швидко змінити роздільну здатність або виявити дисплеї
Rhubarb

Також працював з Virtual Box, який був повноекранним в іншому (неіснуючому) дисплеї. У мене взагалі не було рядка меню. Дякую.
mwilson

Не працювало для мене. Я змінив розмір дисплея, але вікно все ще сидить поза досяжністю. Я бачу це в контролі місії, але я не можу доторкнутися до нього, так що дивно!
bugloaf

3
Обертання на 90 градусів і повернення спрацювали для мене.
mjhm

45

Три ідеї:

  • CmdF1(або CmdfnF1якщо ви налаштували клавіатуру MacBook для використання звичайних функціональних клавіш) перемикає ваші дисплеї між дзеркальним режимом та розширеним робочим столом. Побічним ефектом є те, що вікна пересуваються дещо непередбачувано. Це може перемістити відсутнє вікно кудись видно. Це, мабуть, вимагає підключення зовнішнього монітора.

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

  • Закрийте програму та перезапустіть. Безумовно, неідеальне рішення і не практичне, якщо є незбережена робота.


Перемикання між дзеркальним режимом та розширеним робочим столом не працювало. Я вирішив вийти з Паралелі, яка виводила діалогове вікно перед тим, як вийти. З діалоговим вікном вгору я перемістив вікно Паралелі назад на екран, а потім вибрав "Скасувати" в розділі "Ви впевнені, що хочете вийти?" діалогове вікно. Ще б хотілося, щоб був кращий шлях.
Метью Ранкін

Ваш перший варіант працював на мене. У мене є macbook Pro з двома моніторами. Я не використовую macbook як екран. Cmd F1 працював як шарм. Дякую
ntgCleaner

4
Cmd-F1 для вмикання екрана в дзеркало працював як шарм. А потім Cmd-F1 повернувся до мого звичайного режиму.
Брайан Фохт

Cmd + fn + F1 прекрасно працював! Завдяки мільйонів!
theMarceloR

37

Деякі вікна можна перемістити, наприклад, перетягнувши їх по горизонталі від нижнього краю.

Ви також можете спробувати запустити такі сценарії в редакторі AppleScript:

tell application "iTunes"
    set bounds of windows to {100, 100, 800, 800}
end tell
tell application "System Events" to tell window 1 of process "UltraEdit"
    set position to {100, 100}
    set size to {800, 800}
end tell

Наприклад, це не працює, наприклад, UltaEdit - є повідомлення про помилку, що межі не можна встановити. Також синтаксис, здається, "встановив межі першого вікна на ..."
Вольфганг Фаль

1
@WolfgangFahl set bounds of windows toтакож правильний синтаксис, але я відредагував відповідь, щоб додати другий сценарій, який працював для мене з UltraEdit.
Лрі

Це працювало для X-Lite, коли все інше не вдалося. У X-Lite не було "масштабування", і зміна масштабу дисплея не спрацювала, оскільки X-LIte був повністю на іншому дисплеї.
Девід В.

Дякую! Другий сценарій (але не перший) працював для мене для FileZilla. Переконайтеся, що ви знаходитесь на тому ж робочому столі, що і додаток, під час запуску сценарію.
Том

Відмінно, працює і на VLC, який має звичку застрявати поза екраном, коли він використовувався раніше на відключеному зовнішньому моніторі.
Бенджі XVI

37

Якщо ви бачите частину вікна, утримуйте клавішу Option і натисніть одну з меж вікна. Це дозволить перетягнути вікно в повний вигляд.


1
Я давно проголосував ще одну відповідь, але зараз на іншій ОС це працювало на мене. Це як утримувати альт і перетягувати нову форму в програмах Adobe.
ntgCleaner

Для мене це бездоганно працювало з низкою додатків X11, які наполягають на відкритті за межами видимого простору мого робочого столу. Зазвичай я бачу трохи цих вікон, і наведена вище порада допомогла мені перетягнути їх назад у поле зору.
slm

Мені довелося провести Shift-Option, щоб це спрацювало ... але ... фанстично, дякую!
GreenAsJade

Ні Option, ні Shift-Option не працюють для мене в Yosemite за допомогою FileZilla: |
DemiSheep

Дякую! Це також дозволяє мені змінити розмір фотошопа, коли він не ввімкнено. Здається, єдина відповідь, що працює на всіх вікнах додатків!
1616

21

Ніщо з вищезазначеного не працювало для мене, але я впорався з виправленням, змінивши:

  • Налаштування системи
  • Обладнання
  • Показує

Потім перейдіть на вкладку 'Композиція' 'та перетягніть зовнішнє вікно поверх внутрішнього (замість бічного).


Це працювало для мене, на відміну від усіх інших пропозицій. Однак це не ідеальне рішення .... Я хотів би мати можливість дотримати свою теперішню схему, якщо це можливо.
nukeguy

1
Ніщо інше не працювало для мене - цікаво, чому це поверне вікно Inkscape на MacOS, тоді як жодна опція клавіатури ні нічого не допоможе.
Вольфганг Фаль

9

Якщо параметр Вікно / Масштабування в меню не допоможе (як це запропоновано в першій відповіді):

Вікно / збільшення на OSX

(це може статися, коли програма має власну нестандартну реалізацію меню Window, наприклад Adobe Photoshop),

Вам потрібно перейти до "Налаштування дисплеїв" та вибрати параметр "Більше місця" (Масштабований).

Побачити:

Відображає - Масштабовано - Більше місця

Якщо ви хочете мати постійне рішення, встановіть BetterTouchTool , який надає додаткові параметри (жести) для переміщення вікон. Наприклад:

BetterTouchTool - переміщення вікон


1
Моя роздільна здатність моїх моніторів вже була вимкнена, але якщо встановити з "Найкраще" на "Більше місця", а потім повернути її до замовчування, вікно Filezilla закінчилося як повний екран на моєму екрані Macbook Pro
DemiSheep

1
Для мене працював параметр масштабування + варіант перетягування вікна.
Хорхе Орпінель

8

У мене була ця проблема з Parallels desktop 6 в OS X Lion, завдяки чому власне вікно VM було приховано поза екраном і було видно лише в управлінні Mission та коли ви переходите між пробілами.

Тож для тих, хто має ту саму проблему, і, сподіваємось, це застосовно і в іншому місці: Рішення полягає в тому, щоб клацнути правою кнопкою миші на піктограму програми в Доку, потім перейти до пункту меню "Параметри" і під "Призначити" вибрати "Цей робочий стіл" . Це повинно повернути вікно програми на поточний робочий стіл. Все ж віддавав перевагу попередній панелі попередніх просторів для подібних речей - набагато швидше.

Сподіваюся, що допоможе тим, хто натрапив на цю посаду, з тією ж проблемою, що і з Паралелями (як і я)

Зауважте, що на Lion у цій позиції немає опції Призначити.


Ця відповідь спрацювала для мене, і це єдиний, який не здається величезним злом.
durron597

8

Я знайшов спосіб, використовуючи "Примусити вийти ...", натиснувши піктограму in у лівому верхньому куті.

Використовуйте його для примусового виходу з програми та запустіть його знову. Він починає свіжим, а вікно - на екрані.


Ця пропозиція Мума врятувала мене.
AndyBean

Не працювало для мене з Filezilla - я навіть встановив оновлену версію, і вона не скинула вікно (не видалила стару версію)
DemiSheep

Я можу підтвердити, що це працювало для Inkscape на El Capitan
Wray Bowling

недооцінене рішення IMO
w3debugger

7

Якщо у вас все ще підключений зовнішній дисплей або ви під’єднуєте зовнішній дисплей, і в цей момент вимкнено екран і непридатний для зміни вікна, можна клацнути правою кнопкою миші піктограму цього додатка на доці і змусити вікно переключитися на інший дисплей.

Це дозволить вам змінити положення вікна без необхідності змінювати роздільну здатність дисплеїв або відкривати вкладку системних налаштувань. Все-таки не так просто, як рішення для MS Windows, але, безумовно, простіше, ніж переживати всі інші проблеми.


немає варіантів для цього на йосеміті
Чак ван дер Лінден

Це працювало для мене з додатком Sequel Pro на Високій Сьєррі. Це було поза екраном, і я не міг побачити це рядок меню. Вибраний дисплей 1 і він працював. Дякую!
Найкі

5

Жоден із перерахованих вище методів не працював для мене на OSX 10.7.4. Я намагався отримати доступ до KeePassX, який був повністю поза екраном. (Я перемістив його на другий дисплей вдома, але зараз був в офісі, без другого дисплея.)

Зміна роздільної здатності назад і назад не мала ефекту. Закрити додаток і відкрити його знову не призвело.

Однак, коли я закрив базу даних і попросив відкрити нову, вона перемістила вікно, щоб я міг отримати доступ до спадного меню, щоб вибрати файл . (так!)


4

Утримуйте option+ клацніть піктограму програми в доці два рази, і вона спочатку зменшиться, а потім відновить вікно в повному обсязі на робочому столі.


Схоже, це не працює в macOS 10.14 Mojave.
jasonology

Він все ще працює для мене в Mojave v10.14.6.
Джастін

3

Положення представлень зберігаються у самих файлах ниб. Я це виправив - змінити Вигляд, а потім зберегти його. Вимкніть Interface Builder і запустіть його знову. Моє вікно та переглянути місце, де зібралися на головний екран. Треба сказати, що я спробував усі варіанти, перш ніж це зробити. Це Zoom, видаляючи .plist з Бібліотеки / Налаштування, F8, Gather Windows ... Жоден із них не працював. Я сподіваюся, що це допомагає.


3

Я спробував майже все вище для додатка токена під назвою SecurID, який ми використовуємо для доступу до VPN для роботи. Цей AppleScript нарешті вирішив це (люб’язно http://www.leonamarant.com/2008/04/02/how-to-get-off-screen-windows-back-on-your-mac-os-x-v105/ )

-- Example list of processes to ignore: {"xGestures"} or {"xGestures", "OtherApp", ...}
property processesToIgnore : {}

-- Get the size of the Display(s), only useful if there is one display
-- otherwise it will grab the total size of both displays
tell application "Finder"
    set _b to bounds of window of desktop
    set screen_width to item 3 of _b
    set screen_height to item 4 of _b
end tell

tell application "System Events"
    set allProcesses to application processes
    set _results to ""
    repeat with i from 1 to count allProcesses
        set doIt to 1
        repeat with z from 1 to count processesToIgnore
            if process i = process (item z of processesToIgnore) then
            set doIt to 0
            end if
        end repeat

        if doIt = 1 then
            tell process i
                repeat with x from 1 to (count windows)
                    set winPos to position of window x
                    set _x to item 1 of winPos
                    set _y to item 2 of winPos

                    if (_x < 0 or _y < 0 or _x > screen_width or _y > screen_height) then
                        set position of window x to {0, 22}
                    end if
                end repeat
            end tell
        end if
    end repeat
end tell

У мене була така ж проблема з дурним маленьким додатком secureID. Ця публікація врятувала мене, дякую!
Джейк Холл

2

Перейдіть до системних налаштувань »Дисплеї» Виявити дисплеї.

Це змусить систему повторно переглядати та виявляти відсутній монітор ... Це зазвичай вирішує проблему, коли я натрапляю на неї.

Крім того, якщо це не працює, і ваша система все ще вважає, що монітор підключений, спробуйте дві речі:

  1. Якщо кабель все ще підключений (але відключений від монітора), від'єднайте його.
  2. На вкладці розташування на панелі дисплеїв спробуйте "Зберіть Windows". Це повинно зібрати всі вікна на активний / основний монітор.

Я спробував використовувати дисплеї виявлення, і це не спрацювало. Я не пробував варіант "Зберіть Windows", але наступного разу.
Метью Ранкін

Це може бути, а може і не спрацювати. Я виявив, що Wireshark (додаток X Windows) буде вимкнено, коли підключений другий дисплей. Це насправді помилка XQuartz (визнано). Незрозуміло, чи це помилка Apple, чи помилка XQuartz. Дивіться xquartz.macosforge.org/trac/ticket/797 .
Бенджамін Шолнік

2

Проста відповідь для мене, якщо ви просто повністю видаляєте зовнішні монітори (наприклад, для переходу на конференцію зі своїм ноутбуком) - це просто закрити кришку та відкрити її знову. Усі інші відповіді (^ 1, Збільшити, переміщувати вікна) для мене не працювали.


1

WindowZoomМетод цікавий і , ймовірно , що я хотів би використовувати , якщо б не Moom . Це дозволяє встановлювати гарячі клавіші для переміщення та зміни вікон. У мене є сітка з 9 клітин ( altoption1-9), а також ліва / права половина та кілька інших.

Moom по замовчуванням для centerring і розширення вікна controlshiftzпотім space- я змінив це altz. Супер корисно і для скріншотів, оскільки у вас набагато більший контроль над розміщенням вікон.


0

У крайніх випадках, як-от я зіткнувся з Interface Builder, ви можете спробувати знову підключити другий монітор, знайти це відсутнє вікно, а потім перетягнути його на основний дисплей.

Тепер, щоб перевірити свою роботу, вийдіть з програми, а потім перезапустіть її, щоб переконатися, що всі бажані вікна живуть на вашому основному екрані.

Тепер відключіть другий монітор - все повинно бути нормально.


0

У моїй ситуації вікно зникло на Mavericks після того, як я відключив один із моїх зовнішніх моніторів. У мене був ще один зовнішній монітор, підключений до мого MacBook Pro, в той час як вікна, переміщені з відключеного зовнішнього, перейшли на мій вбудований дисплей. Одне вікно для Chrome було далеко поза фактичним дисплеєм, але з тим, як екрани та "Пробіли" працюють у Mavericks, жодна його частина не відображалася на інших екранах.

Найпростіший спосіб, який я знайшов, - це відкрити Exposé (або натисканням клавіші F9, якщо ви знову ввімкнули цю комбінацію клавіш, або провевши пальцями вгору трьома-чотирма пальцями залежно від конфігурації) та перетягнути вікно, що відсутнє, з одного монітора на інший. Це призведе до того, що OS X автоматично розмістить вікно в межах нового монітора, і воно буде видно знову.


0

Цікаво, чому про це не згадувалося раніше, але існує дуже простий спосіб її вирішити.

Ви можете схопити один з горизонтальних або вертикальних країв вікна (не кути), але перемістіть мишу паралельно до краю, а не в тому напрямку, в якому ви зазвичай працювали, щоб змінити розмір вікна.

Тобто, якщо ви переміщуєте горизонтальний край вікна по горизонталі або вертикальний край вертикально, то він не змінює розмір вікна, а переміщує ціле. Тепер ви можете перетягнути частину вікна назад на екран.


0

Сторонне рішення - використовувати HyperDock . Наразі він сумісний з macOS 10.14 Mojave.

Ця утиліта модифікує док-станцію для відображення попереднього перегляду вікон кожної програми, що плаває над піктограмою програми.

Вони перетягуються, тож ви просто вибираєте вікно, яке хочете переглянути, та перетягуєте його на монітор, на якому він вам потрібен.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.