PDA

View Full Version : استفاده از Effect برای پس زمینه فرم های MDI



bidad
دوشنبه 07 اسفند 1385, 01:55 صبح
ببینید دوستان با یک سری توابع مثل LinearGradientBrush و FillRectangle و Rectangle میشه به بک گروند یک فرم افکت داد مثلا یه افکت از ابی به سفید.
حالا اگه IsMdiContainer رو True کرده باشیم چیکار باید کرد؟
شما راهی به نظرتون نمیرسه؟
البته back Color رو میتونم عوض کنم اما نتونستم از افکت استفاده کنم!

bidad
جمعه 11 اسفند 1385, 15:39 عصر
علاقه ای به زیباتر کردن محیط برنامتون ندارین؟

ghafoori
جمعه 11 اسفند 1385, 17:27 عصر
دوست عزیز من 2 پیشنهاد دارم هر دو غیر عادی هستند اما بهتر از هیچه
1. یک کنترل داخل فرم اصلی بزار تا تمام صفحه رو به پوشونه بعد ان را هر رنگی که خاصی به ان بده
2. یا می تونی از این کد استفاده کنی در این روش فرم فرزند در یک پانل نمایش داده می شوند و کار با پانل هم خیلی راحت است


Dim f As New Form
f.TopLevel = False
panel1.Controls.Add(f)

bidad
جمعه 11 اسفند 1385, 21:28 عصر
ببینید وقتی کنترل داخل فرم بزاریم و مثلا داک اون رو طوری تنظیم کنیم که روی FILL تنظیم بشه بقیه فرم ها همه میرن زیرش امتحان کن !

Alireza_Salehi
جمعه 11 اسفند 1385, 22:22 عصر
وقتی در حالت MDI قرار داریم یک کنترل از نوع MdiClient به فرم اضافه میشه.
با خاصیت this.Controls اندیسش رو پیداکن بعد به روش زیر روش ترسیم کن(البته با توجه به پست اول روش های دیگری هم برای ترسیم حتما خودت بلدی)!

Graphics gph = System.Drawing.Graphics.FromHwnd(this.Controls[1].Handle);
gph.FillRegion(Brushes.AliceBlue, gph.Clip);