Як зробити вікно браузера прозорим.

Працюючи одночасно з декількома додатками, можна зіткнутися з необхідністю постійно перемикатися між ними. У деяких випадках можна звести цю необхідність до мінімуму, зробивши вікно браузера прозорим за допомогою програми Glass2k.
Вам знадобиться
  • - програма Glass2k
Інструкція
1
Відкрийте браузер і зайдіть на сайт розробників програми: chime.tv/products/glass2k.shtml. На сторінці, з'явиться опис утиліти, знайдіть в ньому пункт Download (четвертий зверху) і клацніть по напису Glass2k - Beta Version 0.9.2: 54 kb. Завантажте програму на комп'ютер. Glass2k включає в себе тільки інсталяційний файл, тому для зручності можна скопіювати його в окреме місце.
2
Запустіть програму. Після цього вона автоматично з'явиться в треї. Знайдіть значок програми, клікніть по ньому правою кнопкою миші і в меню виберіть Settings. Це меню налаштувань програми.
3
Якщо поставити галочку біля пункту Auto-Load Glass2k every time Windows starts, програма буде завантажуватися разом із запуском операційної системи. Якщо поставити галочку біля пункту Auto-Rem>
4
Знайдіть меню, що випадає Transparency Popup, в ньому ви можете налаштувати комбінацію клавіш, за якими буде відкриватися віконце з настройками прозорості. В меню Keyboard Shortcuts ви можете встановити гарячі клавіші для тих чи інших ступенів прозорості. У пункті Taskbar Transparency можна встановити прозорість для панелі управління. Щоб зберегти внесені зміни, натисніть на кнопку Save.
5
Відкрийте браузер, вікно якого ви хочете зробити прозорим. Далі можна зробити двома способами. Перший - використовувати гарячі клавіші: Alt (або та клавіша, яку ви встановили для цих цілей в третьому пункті інструкції) + цифри від 0 до 9. Другий - викликати меню за допомогою правої кнопки миші і клавіші, яку ви вказали в пункті Transparency Popup ( см. третій крок інструкції), і в цьому меню вказати необхідні налаштування прозорості.
Корисна порада
За допомогою цієї програми можна зробити прозорим не тільки вікно браузера, але і вікно будь-якої іншої програми.
З вдосконаленням технологій графічного виводу удосконалювалося і API операційних систем, надаючи програмістам все більше можливостей для розробки нестандартних елементів інтерфейсу. Так одним з нововведень операційної системи Windows 2000 були layered-вікна, частини яких могли бути напівпрозорими. Незабаром опис API для роботи з layered-вікнами стало доступно в MSDN. Однак на форумах програмістів питання про те, як зробити вікно напівпрозорим, задаються і понині.
Вам знадобиться
  • - компілятор;
  • - windows sdk або фреймворк для програмування під windows.
Інструкція
1
Отримайте дескриптор вікна, яке необхідно зробити напівпрозорим. Знайдіть або створіть вікно. Для його створення скористайтеся небудь API-функціями CreateWindow, CreateWindowEx, або методами-обгортками навколо цих функцій, що належать класам використовуваного фреймворку. Прототип функції CreateWindow виглядає наступним чином: HWND CreateWindow (LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam); Як видно, функція повертає дескриптор створеного вікна в якості результату виконання. У разі якщо використовується який-небудь клас-обгортка, використовуйте його методи на об'єкті, відповідному створеному вікна для отримання дескриптора.
2
Пошук вікна може бути проведений за допомогою викликів API-функцій FindWindow, FindWindowEx, EnumWindows, EnumChildWindows, EnumThreadWindows та їх комбінацій. Отримати дескриптор вікна, що знаходиться в певній галузі, можна, використовуючи функції WindowFromPoint і ChildWindowFromPoint.
3
Встановіть вікна розширений стиль WS_EX_LAYERED. Використовуйте API-функцію SetWindowLong або відповідні методи об'єктів-врапперов. Функція SetWindowLong повністю замінює інформацію про модифікуються параметрі вікна, тому використовуйте її в комбінації з функцією GetWindowLong для отримання попереднього значення набору прапорів стилів. Наприклад, стиль можна змінити так ::: SetWindowLong (hWnd, GWL_EXSTYLE, :: GetWindowLong (hWnd, GWL_EXSTYLE)); Тут hWnd - дескриптор вікна, знайдений внаслідок вчинення дій, описаних в попередньому кроці.
4
Зробіть вікно напівпрозорим. Використовуйте API-функцію SetLayeredWindowAttributes або методи класів-обгорток. Прототип функції SetLayeredWindowAttributes виглядає так: BOOL SetLayeredWindowAttributes (HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags);
5
Параметр hwnd функції повинен бути дійсною дескриптором вікна, отриманим в першому кроці. Параметр crKey являє собою колірної ключ, використовуваний для визначення напівпрозорих областей. Параметр bAlpha визначає значення напівпрозорості. При значенні параметра bAlpha, рівному 0, «напівпрозорі» області будуть повністю прозорі. При значенні параметра bAlpha, рівному 255, вони будуть повністю непрозорі. Параметр dwFlags визначає режим подальшого відображення вмісту вікна. При включенні прапора LWA_COLORKEY в значення dwFlags напівпрозорі області вікна будуть визначатися на підставі колірного ключа. При включенні прапора LWA_ALPHA параметр bAlpha буде використовуватися для визначення значення напівпрозорості.
6
Для того щоб зробити все вікно напівпрозорим, застосуйте виклик SetLayeredWindowAttributes з віддається перевага значенням параметра bAlpha, прапором LWA_ALPHA, але без прапора LWA_COLORKEY. Використовуйте знайдений дескриптор вікна в якості першого параметра функції. Наприклад, для того, щоб зробити вікно прозорим наполовину, використовуйте виклик ::: SetLayeredWindowAttributes (hWnd, RGB (0, 0, 0), 128, LWA_ALPHA);