winfrom窗口关闭问题

时间:2021-05-11 00:59:17
winfrom窗口关闭问题
有个主窗口,副窗口打开以后就关不了了。  
其他的窗口没什么问题。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using jxsm.pnjx.model;

namespace jxsm.pnjx
{
  public partial class FrmLogin : Form
  {
    private Boolean bCloseFlag = false;
    public FrmLogin()
    {
      InitializeComponent();
    }

    private void FrmLogin_FormClosing(object sender, FormClosingEventArgs e)
    {
      e.Cancel = !bCloseFlag;
    }

    private void btnLogin_Click(object sender, EventArgs e)
    {
      bCloseFlag = LoginInfo.getInstance().checkLogin(this.txtUser.Text, this.txtPass.Text);
      if (bCloseFlag)
      {
        this.Close();
      }
      else
        MessageBox.Show("输入的用户名或口令错误!", AppInfo.SYSTEM_INFO, MessageBoxButtons.OK, MessageBoxIcon.Error);
    }

    private void txtUser_KeyDown(object sender, KeyEventArgs e)
    {
      if (e.KeyCode == Keys.Enter)
        this.txtPass.Focus();
    }

    private void txtPass_KeyDown(object sender, KeyEventArgs e)
    {
      if (e.KeyCode == Keys.Enter)
        this.btnLogin_Click(sender, e);
    }
  }
}
上边是子窗口的代码,应该没问题的。  按照这个写的其他窗口没问题

11 个解决方案

#1


请问,加什么语句就可以正常开关了。  初学,万分感谢

#2


引用 1 楼 u013957635 的回复:
请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

#3


引用 2 楼 u012804018 的回复:
Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

#4


引用 3 楼 u012804018 的回复:
Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

#5


e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

#6


引用 5 楼 duanzi_peng 的回复:
e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

好吧,那我应该怎么改呢。

#7


引用 6 楼 u013957635 的回复:
Quote: 引用 5 楼 duanzi_peng 的回复:

e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

好吧,那我应该怎么改呢。

去掉FormClosing事件。

#8


  //e.Cancel = !bCloseFlag;

#9


引用 4 楼 u013957635 的回复:
Quote: 引用 3 楼 u012804018 的回复:

Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

e.Cancel = !bCloseFlag;这句去掉没???

#10


引用 9 楼 u012804018 的回复:
Quote: 引用 4 楼 u013957635 的回复:

Quote: 引用 3 楼 u012804018 的回复:

Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

e.Cancel = !bCloseFlag;这句去掉没???
winfrom窗口关闭问题去掉了

#11


在program.cs里写。

 FrmLoginLjjr frm = new FrmLoginLjjr();// 登录窗体           
 if (frm.ShowDialog() == DialogResult.OK)          
  {           
     Application.Run(new FrmMain());       // 主窗体  
   }

#1


请问,加什么语句就可以正常开关了。  初学,万分感谢

#2


引用 1 楼 u013957635 的回复:
请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

#3


引用 2 楼 u012804018 的回复:
Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

#4


引用 3 楼 u012804018 的回复:
Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

#5


e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

#6


引用 5 楼 duanzi_peng 的回复:
e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

好吧,那我应该怎么改呢。

#7


引用 6 楼 u013957635 的回复:
Quote: 引用 5 楼 duanzi_peng 的回复:

e.Cancel = !bCloseFlag;
密码或者用户名错误,你永远都关闭不了。

好吧,那我应该怎么改呢。

去掉FormClosing事件。

#8


  //e.Cancel = !bCloseFlag;

#9


引用 4 楼 u013957635 的回复:
Quote: 引用 3 楼 u012804018 的回复:

Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

e.Cancel = !bCloseFlag;这句去掉没???

#10


引用 9 楼 u012804018 的回复:
Quote: 引用 4 楼 u013957635 的回复:

Quote: 引用 3 楼 u012804018 的回复:

Quote: 引用 2 楼 u012804018 的回复:

Quote: 引用 1 楼 u013957635 的回复:

请问,加什么语句就可以正常开关了。  初学,万分感谢

 e.Cancel = !bCloseFlag;把这个去掉,你这个是干什么的

FrmLogin_FormClosing  加this.close()

按你说的改了下,显示错误
未处理的“System.*Exception”类型的异常出现在 System.Windows.Forms.dll 中。

e.Cancel = !bCloseFlag;这句去掉没???
winfrom窗口关闭问题去掉了

#11


在program.cs里写。

 FrmLoginLjjr frm = new FrmLoginLjjr();// 登录窗体           
 if (frm.ShowDialog() == DialogResult.OK)          
  {           
     Application.Run(new FrmMain());       // 主窗体  
   }