Здравствуйте, гость ( Вход | Регистрация )

> Изменить прозрачность окна, Готовый скрипт
cirus
сообщение 3.4.2020, 0:10
Сообщение #1


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26758
Пользователь №: 16.971
Возраст: 29



Пример как изменить прозрачность окна. Пилот 2.41. Запускать от админа.
Код
--lua
local ffi = require("ffi")
local user = ffi.load('User32.dll')
ffi.cdef[[
struct HWND__ { int unused; }; typedef struct HWND__ *HWND;
bool SetLayeredWindowAttributes(HWND hwnd, unsigned long crKey, unsigned char bAlpha, unsigned long dwFlags);
long GetWindowLongA(HWND hWnd, int nIndex);
long SetWindowLongA(HWND hWnd, int nIndex, long dwNewLong);
]]
local LWA_ALPHA, GWL_EXSTYLE, WS_EX_LAYERED = 2, -20, 524288
function transparency(hWnd, transp)
    local h = ffi.cast('HWND', hWnd)
    user.SetWindowLongA(h, GWL_EXSTYLE, bit.bor(user.GetWindowLongA(h, GWL_EXSTYLE), WS_EX_LAYERED))
    user.SetLayeredWindowAttributes(h, 0, transp, LWA_ALPHA)
end

-- указать нужное окно Ctrl+A
transparency(workwindow(), 120)  -- передавать хендл окна и уровень прозрачности от 0 до 255
wait (3000)
transparency(workwindow(), 255)

Прозрачность окна не влияет на клики left и нажатия send, также будут работать findimage/findcolor с типом поиска workwindow. Т. е. можно полностью скрыть окно, при этом можно искать картинки, делать клики и прочее.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения



Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 7.7.2025, 22:43
Designed by Nickostyle