Плавно исчезающая форма - VB
Формулировка задачи:
Привет всем!
Помогите с проблемой.
Не могу понять, как сделать чтобы по истечении времени, например, через 10 секунд, форма медленно исчезала. То есть становилась прозрачной и как станет прозрачной полностью закрылась, то есть отработал Unload Me.
скорость исчезновения тоже регулируется таймером.
Всем спасибо за отклик!
Решение задачи: «Плавно исчезающая форма»
textual
Листинг программы
Option Explicit Dim a As Byte Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long Private Const LWA_COLORKEY = &H1 Private Const LWA_ALPHA = &H2 Private Const LWA_ALPHAANDCOLORKEY = &H3 Private Const GWL_EXSTYLE = (-20) Private Const WS_EX_LAYERED = &H80000 Private Const CLR_Black = &H0& Private Const CLR_Fon = &HFF8080 Public Sub SetTransparent1(hWnd As Long, Layered As Byte) Dim Ret As Long Ret = GetWindowLong(hWnd, GWL_EXSTYLE) Ret = Ret Or WS_EX_LAYERED SetWindowLong hWnd, GWL_EXSTYLE, Ret SetLayeredWindowAttributes hWnd, 0, Layered, LWA_ALPHA Me.Visible = True End Sub Private Sub Form_Load() timer1.interval=1 Me.Visible = False a = 0 End Sub Private Sub Timer1_Timer() a = a + 1 If a > 254 Then Timer1.Enabled = False: Exit Sub SetTransparent1 Me.hWnd, a End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д