PDA

View Full Version : آموزش: دانلود کنید ، فرم های فرزند خود را به صورت maximize در فرم Main باز کنید



saeedhushmand
جمعه 21 مهر 1391, 13:27 عصر
فرم های فرزند خود را به صورت maximize در فرم Main باز کنید
امکان جابهجایی بین tabها ، داشتن button کنار tab برای بستن فرم فرزند
حتما دانلود کنید...

http://uplod.ir/xlwj4pwrma79/WindowsFormsApplication1.rar.htm

Nima_kyan
جمعه 21 مهر 1391, 14:11 عصر
لینک دانلود کار نمیکنه

rezarko
جمعه 21 مهر 1391, 15:21 عصر
لینک دانلود کار نمیکنه
من دانلو دکردم مشکلی نداشت

Nima_kyan
جمعه 21 مهر 1391, 15:30 عصر
من دانلو دکردم مشکلی نداشت
حق با شماست منم الان دانلود کردم

amirhossein.h
جمعه 21 مهر 1391, 20:36 عصر
لینکش درسته

veniz2008
جمعه 21 مهر 1391, 21:52 عصر
آقا کار قشنگی بود، تشکر. مردیم از بس showdialog کرده بودیم. فقط یه سوال: چطور میشه از باز شدن بیشتر از یک بار هر تب جلوگیری کرد؟. یعنی وقتیکه فرم 1 باز شد دیگه با کلیک کردن نشه یه فرم1 دیگه باز کرد.

Nima_kyan
جمعه 21 مهر 1391, 22:25 عصر
آقا کار قشنگی بود، تشکر. مردیم از بس showdialog کرده بودیم. فقط یه سوال: چطور میشه از باز شدن بیشتر از یک بار هر تب جلوگیری کرد؟. یعنی وقتیکه فرم 1 باز شد دیگه با کلیک کردن نشه یه فرم1 دیگه باز کرد.
محمد جان به جاي كد :

private void فرم1ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form1 frm = new Form1();
TabAdd(frm);
}
از اين كد استفاده كن.

private void فرم1ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form1 frm = new Form1();
int State = -1;
for (int i = 0; i < TabChildForm.Items.Count; i++)
if (TabChildForm.Items[i].Name == frm.Name)
{
State = 1;
break;
}

if (State == -1)
TabAdd(frm);
}
روشش بهينه نيست ولي كار ميكنه

saeedhushmand
جمعه 21 مهر 1391, 23:30 عصر
برای اینکه بیش از یک باز باز نشه و اگر دوباره کاربر بر روی منو کلیک کرد تا فرم باز بشه روش Focus کنه این کد در رویداد کلیک باز کردن پنجره بزارین...


if (Application.OpenForms["Acc_Hesab"] == null)
{
Acc_Hesab.Acc_Hesab Acc_Hesab = new Acc_Hesab.Acc_Hesab();
TabAdd(Acc_Hesab);
}
else
{
foreach (Form frm inApplication.OpenForms)
{
if (frm.Name == "Acc_Hesab")
frm.Focus();
}
}

meisam3322
جمعه 21 مهر 1391, 23:44 عصر
دانلود کردم، کار جالبی بود. ممنون. جهت فقط 1 بار باز شدن فرم ها می تونین برای هر فرم یه متغیر Bool تعریف کنین که با باز شدن فرم ، مقدار true و در زمان بسته شدن مقدار false بگیره . زمان کلیک بر روی منوها اول باید چک شود که مقدار متغییر مربوط به اون فرم true هست یا false اگه false بود ، فرم Load بشه.

saeedhushmand
جمعه 21 مهر 1391, 23:56 عصر
دوست عزیز ممنون از نظرتون کدی که در پست بالا گذاشتم به نظرم ساده ترین کدیه که می شه برای جلوگیری از بازشدن مجدد فرم استفاده کرد

Arash_janusV3
شنبه 22 مهر 1391, 00:16 صبح
پروژه ی بسیار جالبی ست
اما نکته ای که باید بگم اینه که از این پروژه می توان الگوهای بسیار زیادی را به کار گرفت
دوستان برای بهینه کردن این پروژه نظرات را اعلام کنند.
و نکته دیگر این که اشکالاتی هم در بر داره
اگر تعداد فرم از یک tab فراتر رفت چه اتفاقی باید رخ بده؟
به نظر من سبکی که محیط ویژوال استادیو داره استفاده می کنه را در این پروژه پیاده کرد
آیا می شه چنین چیزی پیاده کرد؟
93904

veniz2008
شنبه 22 مهر 1391, 00:25 صبح
پروژه ی بسیار جالبی ست
اما نکته ای که باید بگم اینه که از این پروژه می توان الگوهای بسیار زیادی را به کار گرفت
دوستان برای بهینه کردن این پروژه نظرات را اعلام کنند.
و نکته دیگر این که اشکالاتی هم در بر داره
اگر تعداد فرم از یک tab فراتر رفت چه اتفاقی باید رخ بده؟
به نظر من سبکی که محیط ویژوال استادیو داره استفاده می کنه را در این پروژه پیاده کرد
آیا می شه چنین چیزی پیاده کرد؟
93904
میشه منظورتون رو بیشتر توضیح بدید.
سبک باز شدن پنجره ها در نوع خودش جالب و نو هستش و به مراتب بهتر از showdialog كرىن پنجره ها هستش.
من اولین بار چند وقت پیش توی یه نرم افزار این بک باز شدن پنجره ها رو دیدم که در واقع فقط تب اضافه میشد. من فکر میکردم که از یه کامپوننت خاص استفاده میکردن.

Nima_kyan
شنبه 22 مهر 1391, 00:35 صبح
اگر تعداد فرم از یک tab فراتر رفت چه اتفاقی باید رخ بده؟
به نظر من سبکی که محیط ویژوال استادیو داره استفاده می کنه را در این پروژه پیاده کرد
آیا می شه چنین چیزی پیاده کرد؟
این مشکل رو نداره
93905
يكي از مشكلاتش اينه كه عنوان تب Active مشخص نيست مثلا ميشه رنگ لیبل نام تب Active رو متمايز كرد.
و يا يكي ديگه از مشكلاتش بستن تب هستش كه وقتي چند تب به صورت همزمان بازه رو هر كدوم از ضربدرهاي بستن تب ها كليك شه همون تب Active بسته میشه نه اون تبی که داریم رو علامت ضربدرش کلیک میکنیم

Arash_janusV3
شنبه 22 مهر 1391, 01:13 صبح
چطوری می شه کاری کرد که علامت close فقط برای فرمی مشخص باشه که فعال هستش
دقیقا مثل محیط ویژوال استادیو

Arash_janusV3
شنبه 22 مهر 1391, 01:14 صبح
میشه منظورتون رو بیشتر توضیح بدید.
سبک باز شدن پنجره ها در نوع خودش جالب و نو هستش و به مراتب بهتر از showdialog كرىن پنجره ها هستش.
من اولین بار چند وقت پیش توی یه نرم افزار این بک باز شدن پنجره ها رو دیدم که در واقع فقط تب اضافه میشد. من فکر میکردم که از یه کامپوننت خاص استفاده میکردن.
در چه خصوصی منظورم واضح نیست؟
نظر من اینه مثل ویژوال عمل کنه

Nima_kyan
شنبه 22 مهر 1391, 01:51 صبح
چطوری می شه کاری کرد که علامت close فقط برای فرمی مشخص باشه که فعال هستش
دقیقا مثل محیط ویژوال استادیو
93907
اینم فایل جدیدش
93908
البته با اجازه دوستمون saeedhushmand (http://barnamenevis.org/member.php?229255-saeedhushmand) که زحمت اصلی کد اولیه رو ایشون کشیدن.

saeedhushmand
شنبه 22 مهر 1391, 03:58 صبح
دوست عزیز ممنون ایده ی جالبی بود...

siavash525
سه شنبه 24 اردیبهشت 1392, 20:16 عصر
فرم های فرزند خود را به صورت maximize در فرم Main باز کنید
امکان جابهجایی بین tabها ، داشتن button کنار tab برای بستن فرم فرزند
حتما دانلود کنید...

http://uplod.ir/xlwj4pwrma79/WindowsFormsApplication1.rar.htm

دوست خوبم امکان دانلود نیست چون پیام میدهد که فایل را پیدا نکرده

csharpdoost
سه شنبه 24 اردیبهشت 1392, 22:24 عصر
فرم های فرزند خود را به صورت maximize در فرم Main باز کنید
امکان جابهجایی بین tabها ، داشتن button کنار tab برای بستن فرم فرزند
حتما دانلود کنید...

http://uplod.ir/xlwj4pwrma79/WindowsFormsApplication1.rar.htm

توی لینک که فایلی موجود نیست. از دوستانی که دانلود کردن تقاضا میشه یه نفر آپلود کنه. ممنون

Helpco
دوشنبه 22 آبان 1396, 10:37 صبح
93907
اینم فایل جدیدش
93908
البته با اجازه دوستمون saeedhushmand (http://barnamenevis.org/member.php?229255-saeedhushmand) که زحمت اصلی کد اولیه رو ایشون کشیدن.

چطوری میشه از فرزنده دوم مجدد فرزند اول صدا زد؟

m.reza.k
یک شنبه 13 اسفند 1396, 09:01 صبح
فرم های فرزند خود را به صورت maximize در فرم Main باز کنید
امکان جابهجایی بین tabها ، داشتن button کنار tab برای بستن فرم فرزند
حتما دانلود کنید...

http://uplod.ir/xlwj4pwrma79/WindowsFormsApplication1.rar.htm


دانلود نمیشه

رامین مرادی
یک شنبه 13 اسفند 1396, 15:24 عصر
دانلود نمیشه

تایپیک 5 سال قبل حتما لینک دانلودش از کار می افته چون از سرویس آپلود رایگان استفاده شده.
اما شما دنبال کامپوننت mdiTabStrip بگردین عالیه برا خودش.