View Full Version : حرفه ای: فرم شیشه ای
omid-vbAuto
یک شنبه 23 آبان 1389, 21:24 عصر
دوستان اگر توجه داشته باشند با ظهور ویندوزهای ویستا و7 مباحث مربوط به حالت شیشه ای در بیشتر آبجکتهای وینوز وجود دارد .
چند نونه از این موارد رو در عکس های پایین میشه دید .از دوستان می خوام که اگه اطلاعاتی در این مورد دارن به ما هم بفرمایند.
سوال اینکه چطوری فرم خودمونو شیشه ای یا شیشه ای مات کنیم.مانند شکل زیر:
xminxmin
دوشنبه 24 آبان 1389, 08:18 صبح
سلام
فرم ها یه Property دارن به عنوان Opacity که مقدار شفافیت فرم رو تنظیم می کنه
این یه نمونه کد.
Me.Opacity=0.75
Alghoochi
دوشنبه 24 آبان 1389, 08:36 صبح
این opacity نیست. این فرم ها به صورت WPF تهیه می شن. بهتره به فروم WPF تو همین سایت یه سری بزنی
http://barnamenevis.org/forum/forumdisplay.php?f=142
Mani_rf
دوشنبه 24 آبان 1389, 10:10 صبح
از اینجور فرم ها:
http://www.codeproject.com/KB/dialog/rtaGlassEffectLib/rtaGlassEffect.png
بفرما دوست عزیز، سری به این سایت (http://www.codeproject.com/KB/dialog/rtaGlassEffectLib.aspx)بزن تا با نحوه ساختن اینگونه فرم ها آشنا شوی.
mortezaadi
دوشنبه 24 آبان 1389, 10:10 صبح
سلام
فرم ها یه Property دارن به عنوان Opacity که مقدار شفافیت فرم رو تنظیم می کنه
این یه نمونه کد.
Me.Opacity=0.75
خصوصیت opacity تمام کنترل های فرم رو شفاف میکنه. و نمیشه فرمی درست کرد که شفاف باشه ولی کنترل هاش شفاف نباشند
البته من نتونستم فرم شفافی در وی بی درست کنم که کنترل هاش شفاف نباشند
الان هم دارم از همین کامپوننت در برنامه هام استفاده میکنم.
شاید یه روزی گذاشتمش همینجا
Mani_rf
دوشنبه 24 آبان 1389, 10:18 صبح
این هم هست.
http://www.codeproject.com/KB/vista/AeroGlassForms/AeroGlassForms.jpg
در این لینک (http://www.codeproject.com/KB/vista/AeroGlassForms.aspx)
یک دوست
دوشنبه 24 آبان 1389, 17:11 عصر
سلام دوستان
من یه سوال داشتم این فرمهای شیشه ای توی ویندوز ایکس پی جواب نمی ده نه؟؟؟؟
Alghoochi
دوشنبه 24 آبان 1389, 17:27 عصر
این لینک هم من پیدا کردم.
http://msdn.microsoft.com/en-us/magazine/cc163435.aspx
ولی یه سوال دیگه. اگه بخوایم فرمهایی با حاشیه ای مثل فرم تغییر صدای ویندوز داشته باشیم چی؟
فرمی با حاشیه ای مثل فرم عکس
Alghoochi
دوشنبه 24 آبان 1389, 17:29 عصر
سلام دوستان
من یه سوال داشتم این فرمهای شیشه ای توی ویندوز ایکس پی جواب نمی ده نه؟؟؟؟
فکر نمی کنم.
MDSTmdst
سه شنبه 25 آبان 1389, 02:15 صبح
فکر نمی کنم.
چرا ميشه !! فقط امتحان كن ببين..........
كسي تست كرده ؟؟؟؟؟
:چشمک:
ASKaffash
سه شنبه 25 آبان 1389, 08:35 صبح
سلام دوستان
من یه سوال داشتم این فرمهای شیشه ای توی ویندوز ایکس پی جواب نمی ده نه؟؟؟؟
سلام
روی ویستا / سون / ایکس پی جواب میدهد من تست کرده ام
Mani_rf
سه شنبه 25 آبان 1389, 08:38 صبح
سلام دوستان
من یه سوال داشتم این فرمهای شیشه ای توی ویندوز ایکس پی جواب نمی ده نه؟؟؟؟
نه دوست عزیز. این امکان از ویندز Vista به بعد اضافه شده و در نسخه های قبلی قابل استفاده نیست. در ویندوز Vista و بالاتر هم به نوع Theme که برای ویندوز خود درنظر گرفته اید وابسته است و با هر نوع آن این امکان را به شما نمیدهد.
Mani_rf
سه شنبه 25 آبان 1389, 10:34 صبح
این لینک هم من پیدا کردم.
http://msdn.microsoft.com/en-us/magazine/cc163435.aspx
ولی یه سوال دیگه. اگه بخوایم فرمهایی با حاشیه ای مثل فرم تغییر صدای ویندوز داشته باشیم چی؟
فرمی با حاشیه ای مثل فرم عکس
اینطوری مثلا : ؟
http://barnamenevis.org/forum/attachment.php?attachmentid=60360&stc=1&d=1289892839
ControlBox = False بعد Text فرم را هم خالی کن ایطوری میشه. یا تو فرم لود بنویس :
Me.ControlBox = False
Me.Text = String.Empty
Alghoochi
سه شنبه 25 آبان 1389, 20:09 عصر
از پاسختون بسیار ممنون. ولی این کد فقط زمانی کار می کنه که خاصیت FormBorderStyle را به Sizable تغییر بدیم. در مورد فرم های FixedSingle و کلا فرمهایی که قابلیت تغییر اندازه ندارن جواب نمی ده. اینو خودم هم پیدا کردم. آیا راهی هست تا فرم هایی با اندازه ثابت ولی با چنین حاشیه ای بسازیم.
تو عکس ضمیمه FormBorderStyle فرم مقدار Fixedsingle داره.
اینو هم بگم نمی خوام از Maximize Size و Minimize Size استفاده کنم.
یک دوست
سه شنبه 25 آبان 1389, 21:25 عصر
سلام
روی ویستا / سون / ایکس پی جواب میدهد من تست کرده ام
سلام دوست عزیز من تمام کدهایی که دوستان اینجا برای اینکار گذاشتن رو امتحان کردم منتها یه ارور می ده و در توضیح ارور هم نوشته مخصوص ویندوز ویستا و سون می باشد می شه یه نسخه از برنامه ای که فرم شیشه داره و روی ایکس پی هم کار می کنه برام بزارید
Alghoochi
چهارشنبه 26 آبان 1389, 12:33 عصر
دوست عزیز تو این کد اومده بررسی کرده Glass فعال هست یانه. اگه دقت کنی نوشته ویستا یا بالاتر.
Public Shared ReadOnly Property GlassEnabled() As Boolean
Get
Dim VistaOrAbove As Boolean = (Environment.OSVersion.Version.Major >= 6)
If VistaOrAbove Then
Dim Enabled As Boolean
APIs.DwmIsCompositionEnabled(Enabled)
Return Enabled
Else
Return False
End If
End Get
End Property
ASKaffash
شنبه 29 آبان 1389, 09:48 صبح
سلام دوست عزیز من تمام کدهایی که دوستان اینجا برای اینکار گذاشتن رو امتحان کردم منتها یه ارور می ده و در توضیح ارور هم نوشته مخصوص ویندوز ویستا و سون می باشد می شه یه نسخه از برنامه ای که فرم شیشه داره و روی ایکس پی هم کار می کنه برام بزارید
سلام
برنامه پیوست را روی ایکس پی تست کردم و بدون خطا است
یک دوست
یک شنبه 30 آبان 1389, 00:30 صبح
سلام
برنامه پیوست را روی ایکس پی تست کردم و بدون خطا است
ممنون از لطفی که کردین منتها تا اونجایی که من متوجه شدم شما از opacity استفاده کردین وبا این کار هر کنترل دیگری هم که روی فرم قرار بدهیم اونم همین قدر محو می شه بنابراین این اصلا شبیه به فرمهای شیشه ای نیست
پس با این حساب فکر کنم کلا نمی شه برای ویندوز ایکس پی فرم شیشه ای طراحی کرد:متفکر:
ASKaffash
یک شنبه 30 آبان 1389, 09:10 صبح
ممنون از لطفی که کردین منتها تا اونجایی که من متوجه شدم شما از opacity استفاده کردین وبا این کار هر کنترل دیگری هم که روی فرم قرار بدهیم اونم همین قدر محو می شه بنابراین این اصلا شبیه به فرمهای شیشه ای نیست
پس با این حساب فکر کنم کلا نمی شه برای ویندوز ایکس پی فرم شیشه ای طراحی کرد:متفکر:
سلام
فکر کنم تنها راه WPF باشد
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.