窗口问题

allenmingchen 2004-08-11 03:36:43
有两个窗口。
一个是用户验证对话框,另一个是主程序窗口。
想实现:启动时,用户验证对话框在前,主程序窗口在后,没有响应用户对话框之前,不能对主程序窗口进行操作,通过验证以后,用户验证对话框关闭,主程序窗口激活,如果没有通过验证,两个窗口都关闭。怎么实现?
...全文
101 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
marvelstack 2004-08-11
  • 打赏
  • 举报
回复
在主窗体的Load事件中显示登录窗体,把主窗体隐藏起来,如果登录失败,就推出,成功就显示主窗体。
ofei 2004-08-11
  • 打赏
  • 举报
回复
对话框模态显示frmMain.ShowDialog(this);
主窗口最小化
自然就没法操作主窗体了

charliecy 2004-08-11
  • 打赏
  • 举报
回复
可创建一主控台类,在此类中实现主程序入口

在主程序入口函数中调用验证类,pass以后创建主窗口实例。
allenmingchen 2004-08-11
  • 打赏
  • 举报
回复
我是这么写的:
static void Main()
{
frmMain frmMain = new frmMain();
frmMain.Show();

frmLogin frmLogin = new frmLogin();
frmLogin.ShowDialog();
}

private void btnCancel_Click(object sender, System.EventArgs e)
{
this.Close();
}

private void btnOK_Click(object sender, System.EventArgs e)
{
String conStr = "workstation id=ALLEN;packet size=4096;integrated security=SSPI;data source=ALLEN;persist security info=False;initial catalog=vb_study";
string myQeury = "select password from tg_user where loginname = '" + this.txtName.Text.Trim() + "'";

SqlConnection myConnection = new SqlConnection(conStr);
SqlCommand myCommand = new SqlCommand(myQeury,myConnection);

myConnection.Open();

SqlDataReader myReader = myCommand.ExecuteReader();

try
{
while(myReader.Read())
{
if(myReader.GetString(0) == this.txtPwd.Text.Trim())
{
this.Close();
frmMain frmMain = new frmMain();
frmMain.ShowDialog();
}
else
{
Application.Exit();
}
}

}
finally
{
// always call Close when done reading.
myReader.Close();
// always call Close when done reading.
myConnection.Close();

}

}
}
不过这样的话,虽然窗口出来了,不过先出现的两个窗口还是在的...
thinkingforever 2004-08-11
  • 打赏
  • 举报
回复
用户验证对话框进行验证,通过启动主程序窗口,关闭用户验证对话框,不通过,关闭用户验证对话框

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧