如果用户需要在工程主对话框类CMyDlg中使用CRecv类 还必须在头文件 邮件收发器 Dlg.h 中包含该类头文件Recv1.h
... //省略部分代码 #include "Set.h" //包含CSet类头文件 #include "Recv1.h" //包含CRecv类头文件 ... //省略部分代码 然后,在CMyDlg类中定义CRecv内对象 class CMyDlg: public CDialog { ... //省略部分代码 protected: CSet set; //SMTP设置对话框类 CRecv recvdlg; //接收邮件对话框类 }在接收邮件按钮的响应函数OnRecvmai()中 使用CRecv类对象调用接收邮件对话框 代码如下
void CMyDlg::OnRecvmail() { ...//省略部分代码 recvdlg.DoModal(); //使用接收邮件对话框 }用户在编译器中 编译运行以上代码 然后单击 接收邮件 按钮,将弹出接收邮件模式对话框
在程序中为了防止用户使用不当 使其发生错误 所以显示该对话框时 应该使 接收邮件 按钮 显示邮件内容的编辑框等主要控件被禁用
当用户输入用户名及密码以后 是 接收邮件 按钮可用
当用户浏览第2封邮件之后 使 上一封 按钮处于可用状态 初始化界面代码如下
BOOL CRecv::OnInitDialog() { CDialog::OnInitDialog(); GetDlgItem(IDC_RECV)->EnableWindow(false); //禁用各个按钮 GetDlgItem(IDC_EDIT1)->EnableWindow(false); GetDlgItem(IDC_SHANG)->EnableWindow(false); GetDlgItem(IDC_NEXT)->EnableWindow(false); return TRUE; }