Что нового

[Элементы GUI] Создание прогресса на прозрачном GUI

ivsatel

Продвинутый
Сообщения
319
Репутация
84
Здравствуйте.
Использую AutoIt: v.3.3.8.1
Пытаюсь создать бегунок на прозрачном фоне окна:
Код:
#Include <GUIConstantsEx.au3>
#Include <WindowsConstants.au3>

Global Const $PBS_MARQUEE = 8
Global Const $PBM_SETMARQUEE = 0x0400 + 10

$hForm = GUICreate("Progress", 340, 100, 1, 1, $WS_POPUP, $WS_EX_TRANSPARENT)
$hProgress = GUICtrlCreateProgress(1, 1, 300, 20, $PBS_MARQUEE)
GUISetState(@SW_SHOW, $hForm)

While 1
                GUICtrlSendMsg($hProgress, $PBM_SETMARQUEE, 1, 100)
				Sleep(4000)
WEnd

Почему то не сразу прозрачность присваивается элементу.
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Так ?
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <WinApiEx.au3>

$Form1 = GUICreate("", 394, 243, -1, -1, $WS_POPUP, $WS_EX_TOOLWINDOW + $WS_EX_LAYERED)
GUISetBkColor(0x000001)
$ProgressBar1 = GUICtrlCreateProgress(10, 10, 200, 25)
GUISetState()

_WinAPI_SetLayeredWindowAttributes($Form1, 0x000001, 255)

For $i = 0 To 100
	GUICtrlSetData($ProgressBar1, $i)
	Sleep(Random(100, 1000, 1))
Next
 
Автор
I

ivsatel

Продвинутый
Сообщения
319
Репутация
84
Zaramot
По краям остаются точки формы.
 
Верх