vc++ 做一个写字板时,如何实现保存和另存为的功能 以及标尺?

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:29:36
用mfc cricheditview类创建的文本编辑器中保存后的文件 没有特定的扩展名 如何实现这一功能?
还有就是如何添加标尺?
谢谢!!

这是我写过的一个简单的写字板程序中的一段:
void CNotepad2Dlg::OnMenuitemOpen()
{
// TODO: Add your command handler code here
if(!SaveWhenModified())
return;
CString fileName; //打开的文件名
//文件过滤器,打开文件时,文件列表中只出现过滤后的文件
static char szFilter[] = "文本文件 (*.txt)|*.txt|Rich Text Format (*.rtf)|*.rtf|全部文件 (*.*)|*.*||";
CFileDialog cfDlg(TRUE,NULL,"*.txt",OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter,this);
if(cfDlg.DoModal() == IDOK)
m_fileName = cfDlg.GetFileName();
else
return;
//检查文件类型
int pos = m_fileName.Find(".",0);
CString fileType = m_fileName.Mid(pos+1,3);

//打开文件
HANDLE hFile;
hFile = CreateFile((LPCSTR)m_fileName,GENERIC_READ,0,0,OPEN_EXISTING,0,0);
if(hFile == NULL){//打开失败
AfxMessageBox("文件打开失败!");
return;
}
//创建EDITSTREAM结构体
EDITSTREAM EStream;
EStream.dwCookie = (DWORD)hFile;
EStream.d