PDA

View Full Version : مشکل در نمایش فرم



m-alizadeh
یک شنبه 02 فروردین 1388, 08:21 صبح
با سلام
من دو تا سوال دارم:

اول : من چند تا فرم توی برنامه دارم که اولین فرم رو یعنی فرم1 رو به عنوان فرم اصلی در نظر گرفته ام که مابقی فرم ها توی این فرم باز میشن
حلا چطور می تونم یه فرم دیگه مثل فرم لوگین رو به برنامه اضافه کنم و به عنوان اولین فرم اجرا بشه در ضمن محتوای این فرم لوگین رو هم بعد از بسته شدن بتونم به یک فرم دیگه منتقل کنم؟
دوم:در صورتی که از طریق منوی برنامه خود یک فرم مثل فرم ثبت نام باز کرده ام چطور می تونم به برنامه بگم که اگر دوباره روی همون منو کلیک شد فرم ثبت نام جدیدی باز نشه و همونی که اول باز شده رو نشون بده؟

با تشکر

hasan_esfahan
یک شنبه 02 فروردین 1388, 11:44 صبح
فرم جدید را که ایجاد کردید مثلا به عنوان لاگین به قسمت option رفته و فرم جدید را به عنوان فرم اول در اجرا قرار دهید

در فرم دوم در قسمت public دو متغیر از نوه مثلا public string ch1,ch2; تعریف کرده و سپس از فرم لاگین این مقادیر را پاس دهید


form1 f1=new form1();
f1.ch1=textbox1.text;
f1.ch2=textbox2.text;
f1.show();

hasan_esfahan
یک شنبه 02 فروردین 1388, 11:48 صبح
سوال دوم روش های زیادی داره یکی از انها اینه که یک متغیر در نظر گرفته و با باز شدن فرم ان را true کرده و سپس با بستن ان فرم متغیر را false کنید

meysam_pro
یک شنبه 02 فروردین 1388, 11:53 صبح
اول) 1-یک فرم به برنامه ات اضافه کن
2- در قسمت Solution explorer فایل Program.cs رو باز کن خطی به این صورت میبینی:

Application.Run(new Form1());
3- اسم Form1 رو با اسم فرم خودت عوض کن
نکته) اگه بخوای مقداری رو بین فرم ها رد و بدل کنی متغیر رو Public تعریف کن و اگه مقدار یک شئ رو بخوای عوضش کنی ، خاصیت Modifiers اونرو از Private به Public تغییر بده

دوم) میتونی از Application.OpenForms استفاده بکنی که بفهمی فرم دلخواهد instantiate شده یا نه؟
البته بهترین راه Singelton Pattern واسه فرم هست.

m-alizadeh
دوشنبه 03 فروردین 1388, 08:30 صبح
فرم جدید را که ایجاد کردید مثلا به عنوان لاگین به قسمت option رفته و فرم جدید را به عنوان فرم اول در اجرا قرار دهید

در فرم دوم در قسمت public دو متغیر از نوه مثلا public string ch1,ch2; تعریف کرده و سپس از فرم لاگین این مقادیر را پاس دهید

کد:
form1 f1=new form1();f1.ch1=textbox1.text;f1.ch2=textbox2.text; f1.show();


ممنون بابت راهنماییتون ولی خیلی کلی گفتین یکم بهتر توضیح بدین یعنی چی به قسمت option رفته؟
این option کجاست که من نمی بینم ؟

اون روشی که دوستمون گفته رو نمی خوام انجام بدم.

با تشکر

Editali
دوشنبه 03 فروردین 1388, 14:37 عصر
دوست عزیز اول خواستم توضیح بدم، دیدم برنامه بنویسم راحت ترم.
اینم برنامش


http://rapidshare.com/files/212499788/WindowsApplication3.rar

m-alizadeh
سه شنبه 04 فروردین 1388, 08:13 صبح
از همه تشکر و همچنین شما editali مشکلم باتوجه به گفته hasan_esfahan حل شد.
ممنون از همگی ولی هنوز اون گزینه option که hasan_esfahan گفت روپیدا نکردم.