السلام عليكم
هته الفكرة راودتني عندما كنت اصمم برنامج دليل الهاتف على طريقة سامسونج جالكسي لكني لم أنجح حينها في تنفيذها
اليوم وصلت الى الطريقة بحمد الله وشكره واردت مشاركتكم بها
المهم وصلت الى طريقة تجعل اللون الابيض يختفي من الفورم حيث يصبح شفافا بل منعدم وبهذه الطريقة اصبح يمكن جعل الفورم ياخذ اي شكل نريده
كل ما عليك هو وضع هذا الكود في موديل
Option Explicit
Public Declare Function FWw Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function SWLg Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function DrMBar Lib "user32" Alias "DrawMenuBar" (ByVal hWnd As Long) As Long
Public Declare Function SLWA Lib "user32" Alias "SetLayeredWindowAttributes" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Long, ByVal dwFlags As Long) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function ReleaseCapture Lib "user32" () As Long
Public hWnd As Long
Public Function Rabie_Sk(uf As Object, colors As Variant, Optional Sk As Variant = True)
hWnd = FWw(vbNullString, uf.Caption)
SWLg hWnd, -16, &H80080080: SWLg hWnd, -20, &H80000: DrMBar hWnd
Select Case Sk
Case True
SLWA hWnd, colors, &H2, &H1
Case False
SLWA hWnd, colors, 50, &H2
End Select
End Function
وفي حدث UserForm_Initialize ضع هذ الكود
Rabie_Sk Me, vbWhite, True
والباقي عليك في اختيار الشكل الذي تريده
لا اطيل عليكم وأترككم مع المرفق
تحياتي للجميع
اجعل الفورم يأخذ اي شكل تريده.rar