PDA

View Full Version : فرم سایه دار



touraj
دوشنبه 13 خرداد 1387, 15:40 عصر
چطوری میشه یه فرم ایجاد کرد که سایه داشته باشه؟

parsavb
سه شنبه 14 خرداد 1387, 08:07 صبح
از این آدرس می تونید یک نمونه ازاون رو دریافت کنین
http://www.codeproject.com/KB/dialog/FrameShadow.aspx

shahrdar
سه شنبه 14 خرداد 1387, 12:51 عصر
Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
Get
Const CS_DROPSHADOW = &H20000
Dim cp As CreateParams = MyBase.CreateParams
cp.ClassStyle = cp.ClassStyle Or CS_DROPSHADOW
Return cp

End Get
End Property

touraj
سه شنبه 14 خرداد 1387, 21:18 عصر
Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
Get
Const CS_DROPSHADOW = &H20000
Dim cp As CreateParams = MyBase.CreateParams
cp.ClassStyle = cp.ClassStyle Or CS_DROPSHADOW
Return cp

End Get
End Property

خب این کد رو باید چطوری استفاده کنم؟ فرض کن وقتی Button1 کلیک شد، Form1 نشون داده بشه که سایه داشته باشه. چیکار باید کنم؟

علیرضا مداح
سه شنبه 14 خرداد 1387, 22:12 عصر
سلام دوست عزیز ،
کد فوق پروپرتی CreateParams مربوط به فرم را Override میکند ، یک فرم جدید ایجاد کرده و سپس در سولوشن اکسپلورر بر روی آن راست کلیک کرده و گزینه View Code را انتخاب نمایید ، سپس کدهای موجود را بدین صورت تغییر دهید :


Public Class Form1
Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
Get
Const CS_DROPSHADOW = &H20000
Dim cp As CreateParams = MyBase.CreateParams
cp.ClassStyle = cp.ClassStyle Or CS_DROPSHADOW
Return cp
End Get
End Property
End Class


برای اینکه این کد به درستی خواسته شما را برآورده کند باید وارد پنجره Display Properties شده و در تب Appearance دکمه Effects را بزنید ، سپس در پنجره ظاهر شده گزینه Use Shadows Under Menus را تیک بزنید ، در غیر اینصورت فرم شما سایه دار نخواهد بود ،/