مشاهده نسخه کامل
: جا به جایی بین فرم ها
H A M A S
07-06-2010, 11:26
سلام
اگر بخواهیم از form1 به form 2 بریم
چه دستوراتی لازمه
ممنون
یه Button تو فرم اولت تعریف کن و دستور Form2.show رو براش بنویس. و تو قسمت uses مربوط به فرم 1 دستور unit2 رو براش بنویس.
مرد مباح
07-06-2010, 14:27
البته بهتره از showmodal استفاده کنی. و یرای اضافه کردن هم میتونی از use unit (alt+f11) i استفاده کنی.
CPUSatan
21-06-2010, 12:34
هم از
Form2.Show
می تونی استفاده کنی هم از
Form2.ShowModal
باید ببینی کدومشون به کارت میاد. توی اولی فرم قبلیت فعال می مونه ولی توی دومی نمی تونی با فرم قبلیت کار کنی.
Majid.Ebru
22-06-2010, 14:07
سلام
آقا اگه بخوايم كه پنجره دوم فرزند پنجره اول باشه و ما بتونيم توي پنجره پدر ، پنجره فرزند رو باز و يا بسته كنيم بايد چي كار كنيم؟
ممنون
مرد مباح
22-06-2010, 17:46
جنس فرم فرزند باید MDIChikd بشه (امیدوارم درست نوشته باشم) و فرم اصلیتون هم باید فرم والد بشه.
بعد تقریبا کار تمومه ولی نکات خاصی باید رعایت بشه کع بهش میرسی.
من خاصیت فرم ها رو تغییر دادم ولی دیگه فرم فرزند روی نمی تونم ببندم باید فرم پدر را ببندم تا فرم فرزند بسته شه .
M.Hashemi
23-06-2010, 20:39
با سلام
باید در onclose مربوط به events فرم فرزند کد زیر را بنویسید :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدبا تشکر
Majid.Ebru
25-06-2010, 10:44
سلام
بعد از كلي كلنجار رفتن و تحقيق و تفحص فهميدم كه چه طور پنجره فرزند و باز و بسته كرد :
در ابتدا براي اينكه پنجره فرزند بسته بشه بايد توي رويداد onclose فرم بنويسي :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بعد ، براي اينكه در يك زمان فقط يك پنجره فرزند باز باشه ، بايد كد رو اينجوري بنويسي :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حالا توي فرم پدر در ابتدا متغير Bool_form رو معرفي كنيد .
سپس كد زير رو توي مثلا رويداد يه كليد بنويسيد :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
.
.
.
.
.
حالا يه سوال ديگه :
فرض كنيد كه ما 2 پنجره فرزند داريم.والان هر دو پنجره باز هست اما فرم3 روي فرم 2 هست و ما مي خواهيم كه فرم 2 بياد جلو و فرم 3 بره عقب ؟چهط طور بايد اين كار رو كرد؟:2::13::31:
مرد مباح
25-06-2010, 13:03
1. با انتخاب اون دقیقا مشابه با ویندوز.
2. استفاده از Tile
3. معمولا فرم فرزند، به صورت جداگاه Create میشه و از ابتدا وجود نداره.
Majid.Ebru
25-06-2010, 13:21
1. با انتخاب اون دقیقا مشابه با ویندوز.
2. استفاده از Tile
3. معمولا فرم فرزند، به صورت جداگاه Create میشه و از ابتدا وجود نداره.
خوب اين انتخاب چه طوري بايد انجام بشه؟
در مورد tile هم بايد سرچ كنم اما چون اينترنت پر سرعت ندارم ، طول مي كشه؟
ميشه بيشتر راهنماي كنيد؟!
در مجموع ، ممنونم
Majid.Ebru
25-06-2010, 21:42
سلام
1-اگه منظور شما استفاده از
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
هست ، این راه رو هم آزمنایش کردم اما نمی دونم جرا فقط یک بار پنجره میاد جلو و اگه دوباره روی کلید کلیک کنم میره پشت و دیگه هم نمیاد جلو ؟؟
البته اگه از اسم فرمی که تازه ساخته میشه استفاده کنم در هیچ حالت کار نمی کنه؟؟
البته فقط HWND_BOTTOM کار می کنه و HWND_TOP کار نمی کنه
2-آقا Tile چیدمان فرم های رو عوض میکنه؟
من می خوام فرمی که پشته تمام فرم ها هست ، بیاد جلو؟
هدف اینه که اگه یکی از فرمهای فرزند باز هست با کلیک کردن فرم ، فرم مورد نظر بیاد جلو
مرد مباح
26-06-2010, 15:41
شما خیلی راحت میتونین با فرمان Bringtofront این کار رو بکنین.
لطفا فقط بک کمی خلاقیت نشون بدین دوستان. بالاخره ویندوزم رو عوض کردم و دلفی رو ریختم و در کنمتر از 3 دقیقه مشکل شما حل شد.
فایل نمونه برای دانلود :
بالا آوردن فرم فرزند ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
Majid.Ebru
27-06-2010, 07:30
سلام
از شدت شرمندگي روم نميشه پست بزنم.
اين چه آبرو ريزي بود.
به خدا اينقدر به حواشي موضوع فكر كردم ، اصلاً يادم رفت كه به اين گزينه فكر كنم يا نگاه كنم.
.
.
.
.
.
آقا برنامه شما را امتحان کردم .
درسته جواب ميده اما شما فرم ها رو Autocreate کرديد.
فرمهاي من AutoCreate نيست و دستور BringtoFront متاسفانه باز هم جواب نمي ده؟؟
البته خوتون فرموديد که :
3. معمولا فرم فرزند، به صورت جداگاه Create میشه و از ابتدا وجود نداره.
.
.
.
الان هم يه مشکله ديگه؟!؟!
من براي باز کردن فرم پنجره از 2 طريق استفاده مي کنم :
1- با استفاده از گزينه mainmenu
2- استفاده از BitButton
کد اصلي به صورت زير و روي رويداد گزينه mainmenu نوشته شده :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
مشکل اينجاست که اگه فرم فرزند باز باشه و شما از گزينه mainmenu براي باز کردن فرم فرزند استفاده کنيد ارور مي ده :
Abestract Error ??
امم اگه از کلید استفاده کنید این ارور نمایش داده نمیشه؟
می دونم سوالم مبتدی اما کمک کنيد لطفاً
Majid.Ebru
30-06-2010, 10:04
سلام
لطفاً كمك كنيد؟
با تشكر
مرد مباح
30-06-2010, 20:49
شرمنده. چند وقت آن نیودم :
1. خاصیت Child رو توی DesignView (قبل Run) تخصیص بدین.
2. از n4.click استفاده کن.
3. متغیرت رو به صورت Global تعریف کن (همون جایی که asnad_show رو تعریف کردی)
4. uses مربوط به قرمت رو در بالای پروژه بنویس تا ارر نده.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.