PDA

View Full Version : گفتگو: زیبا سازی فرم والد در متد فرمهای MDI



khokhan
دوشنبه 05 فروردین 1392, 16:03 عصر
سلام دارم خدمت همه دوستان

خیلی وقت بود می خواستم روشی پیدا کنم تا بتونم برا پس زمینه فرم والد در الگوی فرمهای MDI تصویر پس زمینه بندازم

به نحوی که هم نیاز به کد نوشتن کم داشته باشه وهم سرعت برنامه رو کم نکنه :لبخند:

حالا اینه اونی که همینه :لبخند:

ممنون می شم شما هم اگه راه حل بهتری سراغ دارین بگین :متفکر:

mousa1992
دوشنبه 05 فروردین 1392, 16:22 عصر
سلام
ممنون از لطفتون خیلی عالی بود و من هم روشی رو براش پیدا کردم و قرارش میدم اینجا یخورده شاید دردسرش بیشتر باشه ولی خب احساس میکنم بهتر جواب میده و برنامه از نظر سرعت بهتر عمل میکنه - نمیدونم شایدم احساساتی شدم :لبخند:

دوستان لطفا دانلود کنید و نظرتون رو در موردش اعلام کنید و اگه بازم کسی راهی داره ارائه کنه همه دوستان استفاده کنن

ی نکته اینکه چون میخواستم حجم برنامه کم باشه عکس همراش اپ نکردم خودتون به بکگراند فرم شماره 2 ی عکس بکگراند بدید و برنامه رو ران کنین

تشکر
موفق باشد
یا علی

khokhan
دوشنبه 05 فروردین 1392, 16:42 عصر
سلام
آقا موسی عالیه حرف نداره فرقش با نمونه ای که من ارسال کردم در اینه که من با حداقل کد نویسی این کارو انجام داد

یعنی


InitializeComponent();
foreach(Control c in this.Controls)

{

if(c is MdiClient)

{

c.BackgroundImage = Image.FromFile((Application.StartupPath + "/16.jpg"));

}

این دو سطر تمام کار است که من انجام دادم

khokhan
دوشنبه 05 فروردین 1392, 20:03 عصر
نکته ای که یادم رفت راجع به این نمونه بگم اینه که می خواستم کاری کنم که از هر فرم فرزند فقط یکی باز بشه

البته این مورد روحل کردم مونده یه ایراد کوچک که اونم حلش خواهم کرد به این ترتیب که


private void toolStripButton1_Click(object sender, EventArgs e)
{
FormCollection fc = Application.OpenForms;
bool FormFound = false;
foreach (Form frm in fc)
{
if (frm.Name == "moalef")
{
frm.Focus();
FormFound = true;
}
}
if (FormFound == false)
{
moalef newMDIChild = new moalef();
newMDIChild.MdiParent = this;
newMDIChild.Show();
newMDIChild.Location = new Point(120, 10);
}
}

khokhan
سه شنبه 06 فروردین 1392, 00:06 صبح
....................؟؟؟؟؟؟