Фоновые окна приложений не будут перекрывать передние окна приложений, когда они получают фокус

1639
Richard B

Симптомы состоят в том, что некоторые (не все) окна настольных приложений останутся в фоновом режиме, за другими окнами, даже если я нажму на них, что обычно заставляет это окно получать фокус и выходить на передний план над любыми другими перекрывающимися окнами., Я не нашел много рифмы или причины либо. Два приложения, которые демонстрируют это поведение наиболее, это Chrome и Visual Studio (к сожалению, эти два приложения я использую чаще других). Еще одна странность в том, что иногда это не так (как сейчас), и все окна ведут себя, как и ожидалось.

Факторы:

  • Windows 8.1
  • Ноутбук Dell Precision (2 года)
  • Всего 3 дисплея, считая ЖК-дисплей ноутбука
  • Внутренний ЖК-дисплей и ЖК-монитор Samsung, подключенный к порту VGA, управляются картой Intel HD Graphics 4000
  • Монитор шлюза подключен к порту HDMI и управляется адаптером Nvidia Quadro K4000m

Я нашел еще один вопрос, касающийся той же вещи, но не получил ответов, поэтому я решил спросить, есть ли у кого-нибудь решение. Этот другой вопрос имеет анимированный GIF, показывающий поведение. Другой вопрос здесь

Есть идеи? Это в основном расстраивает. Когда это происходит, мне нужно перетащить окно, которое я хочу видеть, на другой монитор, а иногда свернуть другие окна на этом мониторе.

* РЕДАКТИРОВАТЬ - НОВАЯ ИНФОРМАЦИЯ * После некоторых преднамеренных расследований и исследований я решил, что, по крайней мере, на данный момент, проблема, кажется, конкретно Visual Studio 2013. Очевидно, когда я перехожу в режим отладки (в настоящее время используется эмулятор Azure, который может или, возможно, не имеет к этому никакого отношения), я смог повторить поведение (только для визуального окна студии, которое могло быть проблемой все время, но я мог поклясться, что Chrome демонстрировал то же поведение). В этом случае visual studio работает в режиме «Оставайся на вершине». До сих пор единственный способ, который я нашел, чтобы очистить его, это выйти из VS и перезапустить, что не является хорошим решением. Я не нашел переключателя в VS для управления этим поведением, но он может быть где-то там. Если я что-то найду, я опубликую решение здесь.

3
Есть ли у вас программное обеспечение, которое меняет поведение Windows? например тот, который заставляет стартовое меню появляться на стартовом экране? Ramhound 9 лет назад 0
@Ramhound, я не совсем уверен, что вы имеете в виду, но похоже, что вы спрашиваете, есть ли у меня запущенная утилита, которая, например, добавила бы традиционное всплывающее меню запуска Windows вместо стартового экрана win8. если так, ответ будет отрицательным. У меня нет сторонних утилит для изменения поведения оболочки вообще. Смотрите мои изменения для новой информации, которую я обнаружил. Richard B 9 лет назад 0
Я начал видеть это с 8.1 после патчей в феврале 2015 года. Все, от Outlook до Chrome и от диспетчера подключений к удаленному рабочему столу * иногда *, но часто просто застревает в фоновом режиме. Никакое количество нажатий на фоновое окно не выведет его на передний план. Я заканчиваю тем, что свернул другие окна перед «застрявшим» окном, чтобы использовать его. Richard 9 лет назад 0
Не уверен, что это будет работать для вас, но главный ответ здесь (http://superuser.com/questions/269415/show-desktop-sometimes-sets-a-window-to-always-on-top), кажется, имеет помог мне. Richard 9 лет назад 0
@Richard, к сожалению нет. Сегодня у меня открыты два окна Chrome, а также MS Word, все на одном мониторе (из нескольких мониторов). Вот сумасшедшая часть: одно из окон Chrome переключит фокус с Word, просто отлично, а другое остается за окном Word (или другим окном Chrome!). Это просто безумие. Я чувствую, что это должно быть сумасшедшая проблема с драйвером дисплея или проблема с ОС. Richard B 9 лет назад 0

1 ответ на вопрос

1
Vinayak

It's possible that some application was set to "Stay on top" which causes it to remain in the foreground even after you've switched focus to another window (e.g. Playing a video in VLC Media Player with Video → Always on Top checked)

If you'd like certain windows to always remain on top, you could use this tiny utility from Labnol.org built using AutoHotkey. Run the program and press Ctrl+Space whenever you want the currently focused window to always remain on top.

Press Ctrl+Space again to deactivate.

If you'd like to compile the AutoHotkey script yourself, this one line of code is the source (uses WinSet):

^SPACE:: WinSet, AlwaysOnTop,, A
Спасибо за ответ, @Vinayak. Я только что добавил в свой пост изменения, в которых подробно изложил новую информацию, которую нашел. Я пробовал AutoHotkey несколько лет назад, но никогда не тратил на это время и не смог установить его на мою новую машину. Возможно, мне придется исследовать это снова. Какова бы ни была проблема, похоже, что она изолирована от Visual Studio. Еще раз спасибо. Richard B 9 лет назад 0
@RichardB Помогает ли этот сценарий решить проблему? Вы можете деактивировать режим «остаться на вершине»? Vinayak 9 лет назад 0
Еще раз спасибо за ответ, но я не установил AutoHotKey и, следовательно, не пытался запустить скрипт. Хотя это может быть единственным жизнеспособным обходным решением, я бы предпочел не полагаться на сторонние программы, чтобы изменить то, что должно измениться, с простым фокусом. Я одобрил ваш ответ, но не помечал его как принятый, поскольку он не решает актуальную проблему (т. Е. Является ли это драйвером, ОС или другой проблемой). Richard B 9 лет назад 0

Похожие вопросы