Что нового

Размещение ПНГ поверх всех окон с поддержкой прозрачности

perven1

Новичок
Сообщения
57
Репутация
0
Добрый вечер, программисты по автоиту.
Помогите разобраться.

Нашел на форуме такую вещь как Icons.au3
http://autoit-script.ru/index.php?topic=49.0

Автор этой вещи заявляет следующее:
"Поддержка иконок и изображений, содержащих прозрачность (Alpha канал).

Я хочу спросить: Если Icons.au3 действительно поддерживает пнг-картинки, содержащие прозрачность (Alpha канал) - то не может ли он разместить на экране поверх всех окон пнг-картинку с прозрачным фоном ?
 

Вложения

  • Icons.rar
    7.2 КБ · Просмотры: 17
  • картинка.rar
    82.9 КБ · Просмотры: 16

InnI

AutoIT Гуру
Сообщения
4,950
Репутация
1,444
perven1
разместить на экране поверх всех окон пнг-картинку с прозрачным фоном
Код:
#include <GDIPlus.au3>
#include <WinAPISys.au3>
#include <WindowsConstants.au3>

$sFilePath = @ScriptDir & "\картинка.png"
If Not FileExists($sFilePath) Then Exit MsgBox(0, "Ошибка", "Файл не найден")

_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($sFilePath)
$hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
$hGUI = GUICreate("", _GDIPlus_ImageGetWidth($hImage), _GDIPlus_ImageGetHeight($hImage), -1, -1, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
GUISetState()
_WinAPI_UpdateLayeredWindowEx($hGUI, -1, -1, $hBitmap, 255, 1)
_WinAPI_DeleteObject($hBitmap)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()

Do
Until GUIGetMsg() = -3
 
  • Like
Реакции: Norm
Автор
P

perven1

Новичок
Сообщения
57
Репутация
0
Большое спасибо.
Именно это и нужно было.
 
Верх