四、关闭时候判分
//这个需要更改,写得太简单了
float CTest9Dlg::compareTXT(CRichEditCtrl &m_sourceRichEd, CRichEditCtrl &m_testRichEd)
{
CString strSource ,strTest;
char * bufSource ;
char * bufTest;
CString s1,s2;
int length = m_sourceRichEd.GetWindowTextLength();
float intCorrect =0;
int i = 0 ;
m_sourceRichEd.GetWindowText(s1);
m_testRichEd.GetWindowText(s2);
bufSource=(LPTSTR)(LPCTSTR)s1;
bufTest =(LPTSTR)(LPCTSTR)s2;
while( i<length )
{
if (*bufSource == *bufTest) intCorrect ++ ;
++bufSource, ++bufTest;
i++;
}
return (intCorrect/length);
}
五、将用户输入文件保存
/*写文件*/
CTest9Dlg::writeTXTtoRichEdit(CString fileName, CRichEditCtrl &m_richEdit)
{
CFile cFile(TEXT(fileName), CFile::modeCreate|CFile::modeWrite);
EDITSTREAM es;
es.dwCookie = (DWORD) &cFile; //设置用例参数,以便回调函数调用es.pfnCallback = MyStreamOutCallback;
m_richEdit.StreamOut(SF_TEXT, es);
}
DWORD CALLBACK CTest9Dlg::MyStreamOutCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)
{
CFile* pFile = (CFile*) dwCookie;
pFile->Write(pbBuff, cb);
*pcb = cb;
return 0;
}
本文实验环境:
VC6.0++
WINDOWS XP
责任编辑:小草