شفاف کردن فرم
براي چي پست كنم شوخي كردم بابا
چطور مي شه يه فرم رو شيشه اي كرد.يعني بشه اونطرفش رو ديد!!.راستي اينو بگم تا يادم نرفته
به يكي مي گن جسم شفاف چيه مي گه جسمي كه بشه از اين طرف اونطرفش رو ديد مثلآ نردبون!! داشتم
مي گفتم اين برنامه با يه تابع كه توي كتابخانهUser32امكان پذيره براي
اين كار توابع زير روتعريف(Declare)كنيد
Option Explicit
Private Const GWL_EXSTYLE = (-20)
Private Const WS_EX_LAYERED = &H80000
Private Const LWA_ALPHA = &H2
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
بعد يه اسكرول افقي با خصيت Max=100را فرم اضافه كنيد
تابع زير را نيز به فرم اضافه كنيد
Public Function TranslucentForm(frm As Form, TranslucenceLevel As Byte) As Boolean
SetWindowLong frm.hWnd, GWL_EXSTYLE, WS_EX_LAYERED
SetLayeredWindowAttributes frm.hWnd, 0, TranslucenceLevel, LWA_ALPHA
TranslucentForm = Err.LastDllError = 0
End Function
در Form_Loadكد زير را بنويسيد
TranslucentForm Me, 255
در كد تغييرChangeاسكرول كد زير رابنويسيد
TranslucentForm Me, HScroll1.Value
اين حالت يعني كم رنگ كردن فرم من در جايي نديدم كه استفاده بشه چون بسيار به سيستم فشار مياره.و
تقريبآ يه حالت هنك مانند ايجاد مي كنه