4

Мне интересно, есть ли что-нибудь похожее на эффект всех окон Expose Mac OSX. Таким образом, с помощью горячей клавиши на системном уровне все открытые окна сжимаются с их текущими представлениями, чтобы соответствовать экрану. Было бы здорово, если бы это тоже был открытый исходный код. Или кто-то может подсказать, как начать разработку такого приложения, какое направление, какие методы использовать и т.д.?

Большое спасибо.

4 ответа4

2

Щелкните правой кнопкой мыши панель задач и выберите Tile?

2

Если вы хотите разработать что-то подобное себе, вам нужно сделать следующее:

  • Вызовите EnumWindows для перечисления окон верхнего уровня. Вы, вероятно, хотите работать только с теми окнами, которые видны.
  • Для каждого окна сделайте копию его текущей позиции и состояния, например, с помощью GetWindowPlacement.
  • Определите, сколько места у вас на экране.
  • Придумайте некоторый алгоритм расстановки окон.
  • Вызовите SetWindowPos чтобы расположить окна так, чтобы они все были видны.
  • Восстановите исходные положения окон, которые вы запомнили, если пользователь попросит сделать это с помощью горячей клавиши.

Это, вероятно, не совсем то же самое, что Exposé, но, вероятно, это трудно сделать снаружи. Такой инструмент, вероятно, нуждается в помощи из оконного менеджера.

0

Удерживать Win+Tab для цикла? Win+D? Удерживая Alt, нажмите Tab, а затем выберите нужную программу?

0

Я нашел приложение с именем Switcher. Похоже, что вдохновлен Exposé. Требуется включить Windows Aero, что означает, что он будет работать только с Vista/7. Он плохо работал на моем старом ноутбуке, но видеокарта "поддерживает Vista", так что, вероятно, это моя вина.

Программное обеспечение Microsoft IntelliMouse также включает в себя что-то вдохновленное Exposé и сопоставляет его с MOUSE3. Для него не требуется Windows Aero, поэтому он должен работать на XP, а также на Vista и 7. Этот работает лучше, чем Switcher на моей машине. Я обнаружил, что обе эти программы плохие по сравнению с Exposé.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .