PDA

View Full Version : آموزش: تابعی برای باز و بسته کردن فرم ها از یکدیگر



barnamenevisjavan
چهارشنبه 31 خرداد 1391, 12:37 عصر
توی یه پروژه نیاز شد که یک فرم رو از یک فرم باز کنم و فرم قبلی رو ببندم و دوباره از فرم جدید باز شده فرم قبلی رو باز کنم و خودش رو ببندم تا اینکه این تابع رو نوشتم و مشکل حل شد

Form1--->Form2

Form2--->Form1
این تابع برای باز کردن فرم و بستن خودش


Public Function openform()
Dim frms As New form2
Me.Hide()
frms.ShowDialog()
Application.Exit()
End Function

این کد هم برای باز کردن فرم قبلی و بستن خودش


Me.Hide()
form1.ShowDialog()

ROSTAM2
چهارشنبه 31 خرداد 1391, 13:43 عصر
اشتباه اول


Dim frms As New form2


شما كه اين فرم رو داريد نياز به تعريف جديدش نداريد!!!!

شايد اشتباه نباشه ولي اشتباه دوم چرا به محض نمايش فرم دوم برنامه بايد خارج شه؟؟؟


Application.Exit()


اگه جستجو كرده بوديد شايد مطالبي در اين زمينه مي بود ولي بهتره وارد Properties از پروژه بشيد و نحوه خارج شدن از برنامه رو براي آخرين فرمي كه بسته مي شه تنظيم كنيد اينجوري بعد از نمايش يه فرم اگه فرم قبلي بسته بشه برنامه خارج نمي شه....

barnamenevisjavan
چهارشنبه 31 خرداد 1391, 14:15 عصر
شاید از نظر شما اشتباه باشه ولی این کار درسته
چون اگر این کار رو نکنیم برنامه نصفه کار میکنه
یعنی مثلا فرم 2 رو باز میکنه خودش بسته نمیشه
فرم 2 باز میشه خودش بسته میشه ولی از فرم 2 باز نمیشه
ومشکلات این چنینی بوجود میاد
شاید شما منظورم رو درست متوجه نشدید ببینید
ما از فرم 1 فرم 2 رو باز میکنیم در این حال که فرم 1 رو میبندیم تا بتونیم از فرم 2 دوباره فرم 1 رو باز کنیم و دوباره از فرم 2 خودش رو میبندیم و فرم 1 رو باز میکنیم

barnamenevisjavan
چهارشنبه 31 خرداد 1391, 14:33 عصر
اشتباه اول


Dim frms As New form2


شايد اشتباه نباشه ولي اشتباه دوم چرا به محض نمايش فرم دوم برنامه بايد خارج شه؟؟؟


Application.Exit()


اگر این کد رو ننویسیم نمیتونیم از فرم دیگه به این فرم برگردیم و خطا میگیره

koorosh-soft
چهارشنبه 31 خرداد 1391, 14:42 عصر
فکر کنم باید حای Exit فرم رو Unload کنید !

barnamenevisjavan
چهارشنبه 31 خرداد 1391, 15:22 عصر
ببین شما اون کد من رو بنویس و تست کن جواب میده

ROSTAM2
چهارشنبه 31 خرداد 1391, 16:25 عصر
وارد Properties از پروژه بشيد (سربرگ Application )و نحوه خارج شدن از برنامه رو براي آخرين فرمي كه بسته مي شه تنظيم كنيد اينجوري بعد از نمايش يه فرم اگه فرم قبلي بسته بشه برنامه خارج نمي شه....

براي نمايش فرم 2


Form2.Show()
Me.Close()


براي نمايش فرم اول


Form1.Show()
Me.Close()

ROSTAM2
چهارشنبه 31 خرداد 1391, 16:27 عصر
نمي خوام تلاش شما رو زير سوال ببرم مي خوام درست عمل كنيد ... :لبخندساده:

ROSTAM2
چهارشنبه 31 خرداد 1391, 17:24 عصر
سورس كد براي نمايش فرم ديگر وبستن فرم كنوني

لينك دانلود: http://p30upload.com/download.php?filename=1340198524_CloseOpenNext.zip

barnamenevisjavan
چهارشنبه 31 خرداد 1391, 19:43 عصر
اینم از مثال با تابعی که نوشتم ممنون از دوستان که روش های دیگری هم ذکر کردن