View Full Version : لود یک فرم به وسیله یک دکمه
pashang
سه شنبه 26 بهمن 1389, 20:40 عصر
با سلام
من توی ++C مبتدی هستم:چشمک:
می خوام یه فرم را توسط یک دکمه یا با کلیک روی منو (Toolstripmenu) لود کنم
اگه لطف کنید یه مثال یا یه تیکه کد بزارید ممنون می شم
ضمنا برای این کار NameSpace خاصی هم می خواد (برای 2005 Visual C++.net میخوام)
من یه پنجره اصلی دارم که فقط برای نمایش اطلاعات استفاده می شه حالا برای اضافه کردن اطلاعات مختلف یا تغییر دادن اینها چند تا فرم (Windows Form) دیگه درست کردم حالا می خوام برای اضافه کردن اطلاعات یا تغییر دادن اطلاعات این فرم هایی که ساختم رو توسط یکسری دکمه (Button) یا از طریق منویی (ساخته شده توسط ToolStripMenu) که درست کردم فراخوانی یا Load کنم من این کار رو توی #C قبلا توی برنامه دیگه انجام دادم حالا می خوام این کار رو توی ++C انجام بدم با تشکر:قلب:
mehdi.mousavi
شنبه 30 بهمن 1389, 13:01 عصر
با سلام من توی ++C مبتدی هستم:چشمک: می خوام یه فرم را توسط یک دکمه یا با کلیک روی منو (Toolstripmenu) لود کنم اگه لطف کنید یه مثال یا یه تیکه کد بزارید ممنون می شم ضمنا برای این کار NameSpace خاصی هم می خواد (برای 2005 Visual C++.net میخوام)
سلام.
برای بازکردن یک Dialog بصورت Modal میتونید بدین شکل عمل کنید:
CAboutDlg dlgAbout;
dlgAbout.DoModal();
در کد فوق، من اول یک متغیر از نوع Dialog مورد نظرم تعریف کردم، سپس با استفاده از متود DoModal پنجره مزبور رو باز میکنم...
موفق باشید.
pashang
شنبه 30 بهمن 1389, 15:01 عصر
با سلام
با تشکر از جوابتون
من برای لود کردن یک فرم (به طور مثال frmAddPoint) که ساختم باید چه کار کنم ؟؟؟
اینجا که نمی تونم (می تونم ؟؟؟) به صورت تعریف متغیر عمل کنم ؟؟؟
یعنی به این صورت درسته ؟؟؟ اگه درسته نوع متغیر رو چیست؟؟؟
form frmAddPoint;
frmAddPoint.DoModal();
با تشکر:چشمک:
mehdi.mousavi
شنبه 30 بهمن 1389, 16:09 عصر
سلام.
شما Dialog مورد نظر رو چطوری ایجاد می کنید؟
ابتدا در Resource File مربوطه، Dialog مورد نظر رو تحت شناسه مورد نظرتون (بطور مثال IDD_TESTDIALO) ایجاد کنید.
سپس کلید CTRL-SHIFT-X رو بزنید تا Class Wizard باز بشه.
در پنجره باز شده، کلید Add Class رو بزنید تا پنجره MFC Add Class Wizard باز بشه.
در این مرحله در بخش Class Name نام کلاس، بطور مثال CTestDialog رو وارد کنید.
Base Class مربوطه رو انتخاب کنید (بطور مثال CDialog).
سپس کلید Finish رو بزنید.
با این کار، دو فایل h و cpp ایجاد میشه. حالا برای باز کردن Test Dialog در مثال فوق، میتونم بدین شکل عمل کنم:
CTestDialog dlg;
dlg.DoModal();
این روش، سریعترین روش ایجاد یک کلاس از روی یک Resource ID (در MFC) هستش.
موفق باشید.
pashang
شنبه 30 بهمن 1389, 18:49 عصر
با سلام
من از دیالوگ استفاده نمی کنم من یه فرم رو از به پروژه اضافه (ADD) می کنم عناصر وشی های مورد نظر رو در اون درست و طراحی می کنم حالا من این فرم و همچنین فرم هایی مشابه این رو می خوام توسط یه دکمه یا از طریق منو ، لود و یا فراخوانی کنم
حالا از این روش میشه این کار رو کرد یا نه ؟؟؟ من توی #C این کار رو می کردم
اگه به این طریق نمیشه آیا نرم افزاری هست که کلا این برنامه رو از ++C به #C (بدون خونریزی:لبخند:) تغییر بدم (فرم ها و چینش اونها به هم نریزه و کد رو بدون مشکل تبدیل کنه ؟؟؟)
با تشکر
mehdi.mousavi
شنبه 30 بهمن 1389, 23:27 عصر
سلام.
منظورتون از فرم چیه؟ دقیقا چه Option ای رو انتخاب می کنید؟ برنامه شما MFC هستش یا C++/CLI؟؟؟ لطفا بفرمایید تا توضیح بدم.
موفق باشید.
pashang
دوشنبه 02 اسفند 1389, 21:54 عصر
با سلام
من از MFC استفاده می کنم
من یه کد تونستم پیدا کنم ولی این فقط یه فرم خالی ایجاد می کنه و من نمی تونم فرم مرد نظر را فراخوانی کنم
Form ^frmAdd = gcnew Form();
frmAdd.Show();
و مورد دیگه ای که هست من نمی تونم اسم فرم های دیگه رو در فرم اصلی ببینم (Global) نیست برای حل این مسئله چه کار کنم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.