windchen
驱动牛犊
驱动牛犊
  • 注册日期2004-08-11
  • 最后登录2010-01-14
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1246回复:4

MFC做的窗口有问题

楼主#
更多 发布于:2004-11-05 15:33
我用MFC做了一个登陆的密码窗口,我在密码框中输入正确或错误的密码后,只要我回车、点OK或Clear button键,密码框都会消失,我现在想在密码错误时输入窗口能保持不小时,我应该怎么做?请高人指教。谢谢!
s_6666_s_qd
驱动巨牛
驱动巨牛
  • 注册日期2004-08-14
  • 最后登录2006-07-11
  • 粉丝0
  • 关注0
  • 积分199分
  • 威望22点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-05 15:58
OK或Clear button键所对应的函数下判断密码正误,如错在OnOK();或OnCancel();前return;
void CMyDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
          if(false)
              return;
OnOK();
}
windchen
驱动牛犊
驱动牛犊
  • 注册日期2004-08-11
  • 最后登录2010-01-14
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-11-07 20:22
我这样做了,但是没有用啊,窗口还是消失了。


void CtestpwDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here

CheckPassword(this->m_hWnd,str2);
          if (flase)
             return;
OnOK();
}
chhj001
驱动牛犊
驱动牛犊
  • 注册日期2004-11-08
  • 最后登录2009-01-04
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-11-08 13:31
屏蔽OnOk()函数及OnCancle()函数;将Ok或Cancle的Id修改即可!
xx_focus
驱动中牛
驱动中牛
  • 注册日期2003-08-06
  • 最后登录2007-06-08
  • 粉丝0
  • 关注0
  • 积分96分
  • 威望10点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-11-08 13:40
我这样做了,但是没有用啊,窗口还是消失了。


void CtestpwDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here

CheckPassword(this->m_hWnd,str2);
          if (flase)
             return;
OnOK();
}


if (flase) 干什么用啊!这个状态哪里返回的呢?

s_6666_s_qd
 说的是, 如果你在输入完密码后按回车就在OnOK()里返回

void CPrasswordDlg::OnOK()
{
     if (FALSE) return; //这里添加就不会关闭窗口

     CDialog::OnOK();//这一句关闭窗口并返回 IDOK 标志
}

游客

返回顶部