PDA

View Full Version : طراحی فرم



mustafa13
سه شنبه 26 آبان 1388, 12:03 عصر
سلام خسته نباشید
دوستان به چه صورت می توان کاری کرد که فرم اصلی به هر اندازه ای که هست فرم های وابسته یا فرم هایی فرعی که باز می شود بزرگتر از فرم اصلی نشود فرم های فرعی حتی در زمان maximize هم داخل فرم اصلی قرار گیرد باتشکر

Reza_Yarahmadi
سه شنبه 26 آبان 1388, 12:18 عصر
اگر خاصیت IsMdiContainer فرم اصلی رو برابر True قرار بدی و زمان نمایش دادن فرمهای دیگه ، فرم اصلی رو به عنوان MdiParent اونها قرار بدیکاری که میخوای انجام میشه.

Arash_janusV3
سه شنبه 26 آبان 1388, 12:20 عصر
سلام
x و y فرم رو بدست بیار و وقتی max رو زد فرم رو به x و y دلخواه برسون و یده به سایز فرم
منم اینکارو نکردم ولی شدنی است

mustafa13
سه شنبه 26 آبان 1388, 13:45 عصر
اگر خاصیت IsMdiContainer فرم اصلی رو برابر True قرار بدی و زمان نمایش دادن فرمهای دیگه ، فرم اصلی رو به عنوان MdiParent اونها قرار بدیکاری که میخوای انجام میشه.
سلام
ممکن با مثال توضیح بدهید با تشکر

Reza_Yarahmadi
سه شنبه 26 آبان 1388, 14:45 عصر
این نمونه ساده رو نگاه کن ببین کارتو راه میندازه یا نه

mustafa13
چهارشنبه 27 آبان 1388, 09:25 صبح
این نمونه ساده رو نگاه کن ببین کارتو راه میندازه یا نه

سلام
حال این امکان را داره که به توان فرم هایی که باز است را لیست کرد و امکان آبشاری عمودی و... کردن را به فرم هایی که باز است را داد. و فرم فعال را در کنار اش تیک بزند مثل منویی windows ای که در ورد 2003 هست می خواهم
با تشکر

Reza_Yarahmadi
چهارشنبه 27 آبان 1388, 16:02 عصر
حال این امکان را داره که به توان فرم هایی که باز است را لیست کرد و امکان آبشاری عمودی و... کردن را به فرم هایی که باز است را داد.

this.LayoutMdi(MdiLayout.Cascade);
this.LayoutMdi(MdiLayout.TileVertical);
this.LayoutMdi(MdiLayout.TileHorizontal);
this.LayoutMdi(MdiLayout.ArrangeIcons);
واسه راحتتر شدن کار از پنجره Solution روی اسم پروزه راست کلیک کنید و گزینه Add/New Item رو انتخاب کنید ، از بین گزینه های موجود گزینه MDI Parent Form رو انتخاب ، اسمی واسش تعیین و OK کنید. بعد از این کار یه فرم به برنامه اضافه میشه که همه این امکاناتی که میخواید رو داره و نیازی نیست شما کد خاصی واسش بنویسید!

mustafa13
پنج شنبه 28 آبان 1388, 10:07 صبح
this.LayoutMdi(MdiLayout.Cascade);
this.LayoutMdi(MdiLayout.TileVertical);
this.LayoutMdi(MdiLayout.TileHorizontal);
this.LayoutMdi(MdiLayout.ArrangeIcons);
واسه راحتتر شدن کار از پنجره Solution روی اسم پروزه راست کلیک کنید و گزینه Add/New Item رو انتخاب کنید ، از بین گزینه های موجود گزینه MDI Parent Form رو انتخاب ، اسمی واسش تعیین و OK کنید. بعد از این کار یه فرم به برنامه اضافه میشه که همه این امکاناتی که میخواید رو داره و نیازی نیست شما کد خاصی واسش بنویسید!
این امکان هست که یک فرم بیش از یک بار باز اجرا نشود.

Reza_Yarahmadi
پنج شنبه 28 آبان 1388, 21:21 عصر
یه روش ساده به این صورته:

Form f2;
if (Application.OpenForms["Form2"] != null)
f2 = Application.OpenForms["Form2"];
else
f2 = new Form2();
f2.Show();

refigh3
جمعه 29 آبان 1388, 09:54 صبح
IsMdiContainer فرم رو روشن کن (true) بعدش اول باید فرم های دیگه رو بچه فرم اصلیت کنی
اینطوری همه پنجره ها تو فرم اصلیت میاد دیگه