نمایش نتایج 1 تا 9 از 9

نام تاپیک: نفی application.exit()

  1. #1
    کاربر دائمی آواتار jd.mn98
    تاریخ عضویت
    فروردین 1392
    محل زندگی
    مشهد
    پست
    284

    نفی application.exit()

    سلام دوستان
    من می خوام بدونم چجوری میشه دستور application.exit() را نفی کرد.
    من روی رویداد FormClosing فرمم این دستور رو نوشتم و یک مسیج باکس گذاشتم که بپرسه آیا می خواهید خارج شوید و دو تا دکمه ی بله و خیر دارد
    من می خوام اگر روی دکمه ی ضربدر بالای فرم کلیک کردم و پیغام نمایش داده شد و من روی دکمه ی نه کلیک کردم برنامه بسته نشه.

  2. #2
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,909

    نقل قول: نفی application.exit()

    در همون رویداد
     e.cancel=true

  3. #3
    کاربر دائمی آواتار jd.mn98
    تاریخ عضویت
    فروردین 1392
    محل زندگی
    مشهد
    پست
    284

    نقل قول: نفی application.exit()

    این کد رو نوشتم ولی کار نکرد

  4. #4
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

    نقل قول: نفی application.exit()

    نقل قول نوشته شده توسط jd.mn98 مشاهده تاپیک
    این کد رو نوشتم ولی کار نکرد
    سلام.
    خوب ننوشتی.
    if (MessageBox.Show("خروج", "آیا قصد خروج دارید؟", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
    e.Cancel = true;

  5. #5
    کاربر دائمی آواتار jd.mn98
    تاریخ عضویت
    فروردین 1392
    محل زندگی
    مشهد
    پست
    284

    نقل قول: نفی application.exit()

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

    public static DialogResult dialog;
    public enum message
    {
    Qexit
    }
    public DialogResult MSG(message m)
    {
    switch (m)
    {
    case message.Qexit:
    frm.btnno.Visible = frm.btnyes.Visible = true;
    frm.lbltxt.Text = "آیا برای خروج اطمینان دارید";
    break;
    default:
    break;
    }
    frm.ShowDialog();
    return dialog;
    }

    اینم کد رویداد formclosing

    private void frm_main_FormClosing(object sender, FormClosingEventArgs e)
    {
    if (c.MSG(Class1.message.Qexit) == DialogResult.No)
    {
    e.Cancel = true;
    }
    }

  6. #6

    نقل قول: نفی application.exit()

    اینطوری فکر کنم درست بشه:

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
    message m;
    switch (m)
    {
    case message.Qexit:
    if (MessageBox.Show("خروج", "آیا قصد خروج دارید؟", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
    e.Cancel = true;
    break;
    default:
    break;
    }}

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

  7. #7
    کاربر دائمی آواتار jd.mn98
    تاریخ عضویت
    فروردین 1392
    محل زندگی
    مشهد
    پست
    284

    نقل قول: نفی application.exit()

    تا حد امکان من می خوام کد هام داخل کلاس باشه

  8. #8
    کاربر دائمی آواتار wolf_majid
    تاریخ عضویت
    آذر 1387
    محل زندگی
    اصفهان
    پست
    534

    نقل قول: نفی application.exit()

    frm.ShowDialog();
    return dialog;

    کد بالا رو اصلاح کن
    return frm.ShowDialog();

  9. #9
    مدیر بخش آواتار مهرداد صفا
    تاریخ عضویت
    تیر 1391
    محل زندگی
    select Country,City From World where Country.Name=IRAN and City.Contains(حضرت معصومه(ع))
    پست
    1,499

    نقل قول: نفی application.exit()

    با سلام.
    یک راه جلوگیری از بسته شدن پنجره همانطور که دوستان گفتند تغییر خصوصیت Cancel آرگومنت رویداد FormClosing به true است.
    همچنین می توانید متود WndProc فرم را بازنویسی کنید و در صورت نیاز از پردازش پیغامهای WM_CLOSE و WM_DESTROY جلوگیری کنید. به این صورت:

    //بسم الله الرحمن الرحیم
    //اللهم صل علی محمد و آل محمد

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication2
    {
    public partial class Form1 : Form
    {
    const int WM_CLOSE = 0x0010;
    const int WM_DESTROY = 0x0002;

    public bool AllowExit{get;set;}
    public Form1()
    {
    InitializeComponent();
    this.AllowExit = false;
    }

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
    //e.Cancel = !this.AllowExit;
    }
    protected override void WndProc(ref Message m)
    {
    if (!this.AllowExit && ((m.Msg == WM_CLOSE) || (m.Msg == WM_DESTROY))) return;
    base.WndProc(ref m);
    }

    }
    }
    چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست
    **********
    اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ

تاپیک های مشابه

  1. سوال: تفاوت دو دستور Close و Application.Exit در چیست؟
    نوشته شده توسط Ehsan Programmer در بخش C#‎‎
    پاسخ: 5
    آخرین پست: جمعه 01 خرداد 1394, 17:59 عصر
  2. ماژول مربوط به application.exit
    نوشته شده توسط gama118 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: پنج شنبه 12 اسفند 1389, 14:20 عصر
  3. Application.Exit
    نوشته شده توسط vadood در بخش VB.NET
    پاسخ: 4
    آخرین پست: یک شنبه 23 شهریور 1382, 20:23 عصر
  4. Running .Net applications
    نوشته شده توسط Farhad.B.S در بخش VB.NET
    پاسخ: 3
    آخرین پست: پنج شنبه 15 خرداد 1382, 00:47 صبح
  5. ٌWAP applications in iran؟
    نوشته شده توسط khafanovich در بخش توسعه نرم افزارهای تحت شبکه
    پاسخ: 1
    آخرین پست: پنج شنبه 18 اردیبهشت 1382, 07:58 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •