本帖最后由 c99c88 于 2010-01-22 19:17:46 编辑

解决方案 »

  1.   

    基于对话框的当然可以连数据库
    if(bLogin = TRUE)
        btSave.EnableWindow();
      

  2.   

    可以在LoginDialog类里加一个成员变量BOOL m_bLogin,初始化为FALSE,在密码通过时才设为TRUECLoginDialog dlg;
    dlg.DoModal();
    if(dlg.m_bLogin == TRUE)
        btSave.EnableWindow();
    这段代码最好放在应用类的InitInstance()里,程序启动时就弹出密码输入窗口
      

  3.   

      btSave.EnableWindow(); 这一句编译不过。
    error C2228: left of '.EnableWindow' must have class/struct/union type
      

  4.   

    我把他改成  GetDlgItem(btSave)->EnableWindow(true); 
    编译通过了,但是功能没有。
      

  5.   

    GetDlgItem 的参数是 ID
    如GetDlgItem(IDD_MYDLG);
      

  6.   

     if(m_UserRecordSet.IsEOF())
      {
       m_UserRecordSet.Close();
       AfxMessageBox("密码错误,请重试");
       return;
      }
      else
      {
       m_UserRecordSet.Close();
       m_bLogin== TRUE;
       AfxMessageBox("密码正确,登陆成功!");
      }
    ——————————————————————
    void CMyDaybookView::OnAct() 
    {
    // TODO: Add your command handler code here
       CDiaCode dlg;
    dlg.DoModal();
    if(dlg.m_bLogin == TRUE)
        GetDlgItem(IDM_SAVE)->EnableWindow(); 
    }
    ____________________________________
    以上不能实现激活“IDM_SAVE”为什么啊?谁解决问题,再加40分啊
      

  7.   

    CDiaCode dlg; 
    dlg.DoModal(); if(dlg.m_bLogin == TRUE) 
        GetDlgItem(IDM_SAVE)->EnableWindow(); 
    这个DOModal()是单步执行,也就是说模式对话框操作完毕以后,dlg已经被销毁了。所以,单步到if(dlg.m_bLogin == TRUE)就无法判断了。
      

  8.   

    首先将对话框里面按钮的visable属性去掉,你在模态对话框LoadDialog中btLoadOk这个按钮被点击正确时 把这个状态回传给传给 显示“btSave"按钮的程序,然后将其显示就行