امکان نمایش Form1 در Panel1
با سلام
چطوری میشه یک فرم رو توی یک پنل خاص از فرم های دیگر باز کرد یا نمایش داد؟
مثلا وقتی ما دوتا فرم داریم: Form1 و Form2
کاربر روی دکمه ای روی فرم یک که برای نمایش فرم2 هستش کلیک کنه، فرم 2 داخل یکی از پنل های فرم1 باز بشه...
آیا این امکان وجود داره؟
نقل قول: امکان نمایش Form1 در Panel1
سلام
این جوری که شما میگید فکر نکنم بشه .
ولی چندتا راه داره که امتحانش ضرر نداره :
1.اجازه ندی فرم از محدوده ی پنل خارج بشه !!
که ما قبلا یه چیزی شبیه اینی که گفتم رو نوشتیم :
http://programming.ramiz.ir/index.ph...&catid=9&id=18
2.مثلا کنترل های فرمی که می خوای باز بشه رو روی فرم اصلیت بزاری و VISIBLE اونا هم FALSE کنی و وقتی روی دکمه کلیک کرد اونا نمایش پیدا بکنن .
نقل قول: امکان نمایش Form1 در Panel1
سلام
بله وجود داره به سادگی
Form2 f2 = new Form2();
f2.TopLevel = false;
f2.Dock = DockStyle.Fill;
panel1.Controls.Add(f2);
f2.Show();
نقل قول: امکان نمایش Form1 در Panel1
ضمن عرض سلام خدمت اساتید محترم و تبریک سال نو.
یه مشکل الان بهش برخوردم...
من توی فرمم یه پنل گذاشتم که با استفاده از منو فرم های دیگه ام رو توی اون پنل باز میکنم... حالا میخواستم وقتی کاربر کلید Escape رو بزنه فرم های باز شده بسته بشه
if (e.KeyCode == Keys.Escape)
panel_CenterMain.Controls.Clear();
و وقتی مثلا F1 به عنوان کلید میانبر بزنه مثلا فرم1 دوباره توی پنل باز بشه اما با کد فوق وقتی بعد از Escape کلید F1 رو میزنه دیگه توی پنل add نمیشه یا به عبارتی فرم دیگه باز نمیشه، و باید از منو، با موس کلیک کنه تا فرم مورد نظر باز بشه، شما نمیدونید مشکل کجاست؟ ممکنه وقتی کنترل های پنل رو کلیر میکنیم یه چیزی از کار میفته که با کلیک کردن فعال میشه؟البته من خیلی خوب بلد نیستم سوال مطرح کنم، امیدوارم متوجه شده باشد...
if (e.KeyCode == Keys.F2)
{
frm_CreateGroupsUser creatGroupUser = new frm_CreateGroupsUser();
creatGroupUser.TopLevel = false;
panel_CenterMain.Controls.Add(creatGroupUser);
creatGroupUser.WindowState = FormWindowState.Maximized;
creatGroupUser.Show();
}
لطفا راهنمای کنید، پیشاپیش سال 92 مبارک.
1 ضمیمه
نقل قول: امکان نمایش Form در Panel
مشکلی نداره که.
این رو ببینید.
نقل قول: امکان نمایش Form1 در Panel1
ممنونم از توجه شما، نمیدنم چرا قبلا کدم کار نمیکرد اما الان درست کار میکنه... مثل برنامه ای که شما فرستادید جناب mafaman2003 من با 2008 کار میکنم نتونستم کد برنامه شما رو ببینم اما فایل EXE رو دیدم، ممنونم.
نقل قول: امکان نمایش Form1 در Panel1
کافیه بود داخل فولدر پروژه فایل پروژه رو با vs باز کنید(Show_form_in_panel.csproj)
1- در ابتدا فایل پروژه را با NotePad باز کنید ( Open With ----> Notepad )
*** فایل پروژه همان فایلی است که با باز کردن آن پروژه باز میشود ( پسوند آن .Sln )
2- حالا این قسمت رو پیدا کنید Format Version 11.00
و اونو به Format Version 10.00 تغییر دهید (اگر میخواید به 2005 تبدیل بشه اونو به 09.00 تغییر دهید)
3- این قسمت رو هم پیدا کنید Visual Studio 2010
و اونو به Visual Studio 2008 تغییر بدید (اگر میخواید به 2005 تبدیل بشه اونو به 2005 تغییر دهید)
4- پنجره Notepad را ذخیره کنید ( با کلیدهای Ctrl+s )
5- حالا ویژوال را باز کنید، ازمنوی فایل گزینه open و سپس open file را انتخاب کنید و از داخل پوشه ای که فایل های برنامه درون آن قرار دارند فایلی همنام پروژه با پسوند csproj. را باز کنید
6- حالا این قسمت رو پیدا کنید "ToolsVersion="4.0
و آنرا به 3.5 تغییر دهید
7- این قسمت را پیدا کنید v4.0
و اینم به 3.5 تغییر بدید