你编译那个错误,只要选择Rebuild All 完全重新编译,就可以了,不是提锋逗示的程序本身错误。
GetDlgItemText((Cnum1*)IDC_EDIT1,dis)这个不是一个合理的逻辑,不要这模困皮旦差样考虑尺竖了。
GetDlgItemText是对话框函数,在这里这个函数相当于:
Clandlg::GetDlgItemText(...)
这样不可能对主对话框产生影响。
传递方法有二:
获取主对话框有效指针(注意不是类名就可以)并且不能是模态子对话框
或者domodal之后,通过两个对话框类的成员变量之间传递,在主对话框赋值和更新控件
int CLoginDlg::Read()//密码正确返回1,否则返回0;{
UserInfo data//这是个结构体,存储你的用户名和密码
CFile fd
if (!fd.Open("user.ini",CFile::modeRead))
{
AfxMessageBox("读取用户信息失败")
return 0
}
GetDlgItemText(IDC_NAME,szName)//你输入的用户名
GetDlgItemText(IDC_PASS,szPass)//你输入的密码
while (fd.Read(&data,sizeof (data)))
{
if (szName == data.nName &&szPass == data.nPass)
return 1
}
fd.Close()
return 0
}
从一个对话框d到另一个对话框消悄,只需要把头文件关联一下历桥培,在肢唯定义一个类变量就可以了。
#include"LoginDlg.h"
void CBookDlg::OnAdd()
{
CLoginDlg dlg
dlg.DoModal()
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)