既然你是自绘滚动条,然后不能自己保存当前的位置信息吗?

解决方案 »

  1.   

    不可以的,滚动条需要与Edit交互,必须先知道edit中文字位置(比如通过行数)才能计算确定滚动条位置;
    一开始我用的是:
    double nPos  = m_pEdit->GetScrollPos(SB_VERT);
    double nMax  = m_pEdit->GetScrollLimit(SB_VERT);
    但是发现Getlasterror()返回1447-窗口没有滚动条;所以才想起加WS_VSCROLL属性;
    嘿嘿,不过我刚才查找MSDN,找到了一个API通过它页能计算edit中的滚动条的位置,分享给大家:
    double nMax = m_pEdit->GetLineCount();
    double nPos = m_pEdit->GetFirstVisibleLine();
    与这两个数相信不难计算了。。
    问题决解了