Как сделать некоторые фрагменты в проге прозрачными? - VB

Узнай цену своей работы

Формулировка задачи:

Слуште. Поиск на форуме не пашет почмуто поэтому решил тему создать. Как сделать некоторые фрагменты в проге прозрачными? к примеру хочу чтоб форма была не 4х угольная а прозрачная. Как? и каак сделать полупрозрачность? спс.

Решение задачи: «Как сделать некоторые фрагменты в проге прозрачными?»

textual
Листинг программы
Option Explicit
 
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 crey As Byte, _
    ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Const GWL_EXSTYLE = (-20)
Private Const WS_EX_LAYERED = &H80000
Private Const LWA_ALPHA = &H2&
 
Private mbytOpacity As Byte
Private Sub Form_Load()
       
    VScroll1.Min = 0
    VScroll1.Max = 255
    VScroll1.Value = 255
    
    mbytOpacity = VScroll1.Value
    
    SetFormOpacity
    
End Sub
Private Sub SetFormOpacity()
    Dim bytOpacity As Byte
    
    bytOpacity = mbytOpacity
    
    SetWindowLong Me.hwnd, GWL_EXSTYLE, GetWindowLong(Me.hwnd, GWL_EXSTYLE) Or WS_EX_LAYERED
    SetLayeredWindowAttributes Me.hwnd, 0, bytOpacity, LWA_ALPHA
End Sub
Private Sub VScroll1_Change()
    mbytOpacity = VScroll1.Value
    SetFormOpacity
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5