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


26

У Windows 8 ви можете «прив’язати» два додатки один до одного, і одним із цих додатків може бути старе середовище робочого столу Windows. Зручним додатком для цього (або я так вважав) буде оснащення клієнта чату, невеликого браузера чи іншого додатка під час перегляду вмісту в повноекранному режимі на робочому столі.

Проблема з цим полягає в тому, що повноекранні настільні програми займуть весь екран, навіть якщо робочий стіл буде зафіксовано, щоб він займав лише 3/4 частину дисплея.

Мені б хотілося, щоб якимось чином змусив "на весь екран" настільні додатки покривати лише оснащену область робочого столу та по-справжньому перейти на весь екран, якщо робочий стіл буде оснащено на повну ширину. Чи є спосіб налаштувати це?

Якщо це не мало сенсу, дозвольте проілюструвати картинками:

Робочий стіл в оснащеному режимі з чатом SU в міні-браузері:

відрізав

Що відбувається, коли ви натискаєте "повний екран":

повноекранний

Що я хочу статися, коли натискаю "повний екран" (зауважте, що це цифрово змінено, а не реальний знімок екрана)

повний екран

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


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

2
@HenningKlevjer правда, але якщо я хочу, щоб він був на весь екран, я завжди можу закрити додаток на стороні. Було б непогано, якби існував спосіб, щоб Windows в основному сказала програмі "йо, цей екран зараз 1024x768, гаразд? Чудово, зараз переходьте на повний екран!" Поки це не помітно для програми, я думаю, що він буде добре працювати. Я просто не впевнений, чи існує такий спосіб.
nhinkle

Виняток становитиме, якщо йому потрібен доступ DirectX (і, можливо, OpenGL) в повноекранному режимі, як для ігор.
nhinkle

Абсолютно! Але це звучить як угода з безладом водіїв;) (оголене, додав мій коментар як відповідь)
Геннінг Клев'єр

@HenningKlevjer погодився, мабуть, будуть якісь перешкоди для подолання, і це може бути причиною, що це не поведінка за замовчуванням. Будемо сподіватися, що буде якийсь шлях, хоча це не зламає речі занадто погано!
nhinkle

Відповіді:


2

Якщо вам потрібно лише переглянути відео на YouTube, ви можете дотримуватися цього рецепту:

  1. Введіть цей URI у свій браузер і видаліть якомога більше неважливого вмісту вікна (адресний рядок, закладки тощо): data:text/html;,<iframe class="youtube-player" type="text/html" width="800" height="600" src="http://www.youtube.com/embed/dfiR1Rde7dI" frameborder="0"> </iframe>
  2. Відрегулюйте widthта heightатрибути, щоб вдосконалити розмір екрана.
  3. Змініть ідентифікатор відео YouTube в кінці поля src, після /embed/.
  4. Насолоджуйтесь

1
Окрім того, у вас може бути деяка закладка JavaScript для автоматизації процесу вилучення scrта відкриття нової вкладки без необхідності нічого вводити вручну.
Анкіт

2
Це акуратний трюк для YouTube, дякую! Я хотів би рішення, яке працює для будь - якої програми на весь екран, але це класна порада.
nhinkle

2

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

Веб-переглядач повинен запитати Windows про поточний стан перегляду та внести необхідні коригування.

Важливим наслідком є ​​те, що проблему неможливо вирішити без змін рівня джерела для програм.


0

Альтернативним рішенням було б відкрити відео за допомогою вбудованого відеопосилання.

  1. Замінити watch?v=з v/сторінки в адресному рядку і попаданніEnter

    Щоб змусити програвач вести себе таким же, як і режим повноекранного режиму, додайте наступні параметри в кінці URL-адреси: ?showinfo=0&autoplay=1&autohide=1

  2. Потім сфокусуйте адресний рядок ще раз і натисніть, F11щоб приховати інтерфейс браузера та панель завдань
    (не впевнений, чи правильно він поводиться зі зручним робочим столом)


Ви також можете зберегти такі дані як закладку, яка потім зробить роботу за вас:

javascript: location.get = function (a) {return (a = RegExp (encodeURIComponent (a) + "= ([^ &] *) &?"). exec (location.search))? a [1]: null }; location.get ("v") && (location.href = "http://www.youtube.com/v/" + location.get ("v") + "? showinfo = 0 & autoplay = 1 & autohide = 1" );


Це не працює. Натискання клавіші F11 переводить браузер у повноекранний режим, який охоплює весь екран - саме тієї проблеми, яку я намагаюся уникати.
nhinkle

@nhinkle Як я вже говорив у своїй відповіді, я не був повністю впевнений, чи F11 поводиться відповідно. Окрім цього, ви навіть пробували рішення із закладками?
asdf

Це суперечка - це рішення насправді не досягає того, що я хочу зробити. Це на півдорозі працює для відео YouTube, і не працює ні для чого іншого.
nhinkle

@nhinkle Тому я назвав це альтернативним рішенням. Мені просто цікаво, чому відповідь Геннінга отримує відгуки, хоча це в основному те саме, що і моє, просто складніше.
asdf

0

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

Описовий опис представлений у цій статті про злочини .

(У мене немає Windows 8, я не можу перевірити.)


Цікава знахідка, але, здається, не вирішує проблему. Я перевірив це на Windows 8 із оснащеним додатком збоку. Він належним чином максимізує програму по всій області оснащеного робочого столу, але нічого не допомагає зробити її на весь екран. Все вікно хромується досі.
nhinkle

Що станеться, якщо змусити програму перейти на весь екран, а потім скористатися гарячою клавішею WinMaxinumize?
harrymc

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