下了一个WinCE上的电子书程序,有一些不明白,请问以下代码是什么意思?int m_TotalPage;   //总页数
int m_CurrentPage;
int m_PageSize;
int m_PageWords;
DWORD m_FileLen;   //文件长度(byte)
BYTE*  m_FileMem;   //内存文件
BYTE* m_lpFile;   // 文件读取位置指针,
BYTE*  m_lpstrbuff;   //
RunInit m_InitInf;   //需要保存的运行信息
CFont m_BookFont;         
        ......        //str 是读出的字符       
        pEdit->SetWindowText(str);
line = pEdit->GetLineCount();  
        ........
        /////以下代码是什么意思?
        //计算每页行数  
CDC* pDC = (CDC*)GetDC();
CRect txtRect;
pDC->SelectObject(&m_BookFont);
pDC->DrawText(L"我们", &txtRect, DT_CALCRECT);
int pagehight = 240 / txtRect.Height(); int pagechars = (pagehight * str.GetLength() )/line;
pagesize = ( pagehight*len )/line;
pagecount = m_FileLen/pagesize + 1; m_PageWords = pagechars;
m_PageSize = pagesize;
m_TotalPage = pagecount;

解决方案 »

  1.   

    我看来的话是在当前文档某区域绘制m_BookFont的“我们”字样,下面那些分页用的,计算页面高度,每页的字符数等等
      

  2.   

    CDC* pDC = (CDC*)GetDC();             //得到屏幕DC
    CRect txtRect; 
    pDC->SelectObject(&m_BookFont);       //选择字体
    pDC->DrawText(L"我们", &txtRect, DT_CALCRECT); //在屏上输出"我们",并用txtRect记录"我们"所占的区域.
    int pagehight = 240 / txtRect.Height(); //240是屏幕的高度,单位应该是像素,计算结
                                                  //果pagehight是屏幕能输出多少行字.int pagechars = (pagehight * str.GetLength() )/line; //line在哪里定义了??代表
                                                                 //什么,楼主怎么没有说啊.
    pagesize = ( pagehight*len )/line;            //len在哪里定义了,代表什么,楼主
                                                         //也没说?
    pagecount = m_FileLen/pagesize + 1;           m_PageWords = pagechars; 
    m_PageSize = pagesize; 
    m_TotalPage = pagecount; 
      

  3.   

    int line;pEdit->SetWindowText(str); 
    line = pEdit->GetLineCount();  
    // 读取文件内容
    len = file.GetLength();
    lpData = new BYTE[len+1];
    file.Read(lpData, len);
    file.Close();
      

  4.   

    //240是屏幕的高度,单位应该是像素,计算结果pagehight是屏幕能输出多少行字. 屏幕的高度(像素)和屏幕能输出多少行字有何种关系?