我用edit控件实现翻页,结果翻页多显示了上一页的几个字符,可能是少读了段落最后的换行字符
不晓得怎么解决?
关键代码如下:
int pos = 0;
TCHAR buffer[100];
for( int i = 0; i < m_nNumLine; i++) //m_nNumLine 为edit控件的行数
{
memset(buffer,0,100);
m_editdiplay.GetLine(i,buffer,100);
int len = _tcslen(buffer);
//CString str1;
//str1.Format(_T("page pos:%d"),len);
pos += len;
//this->MessageBox(str1);
}
// pos = pos /sizeof(TCHAR);
page[m_nNumPage].pos = page [m_nNumPage-1].pos+ pos;
page[m_nNumPage].bState = FALSE;
CString str;
str.Format(_T("page pos:%d"),page[m_nNumPage].pos);
this->MessageBox(str);
以上代码;读每一行的Text,算出长度,保存长度.用于指示下一页的位置
哪位高手指点下,这个问题怎么解决,或者告诉小弟其他的方法实现翻页
行间的间距也要计算上去的。