CScrollView放大后的定位问题

freespider 2003-10-16 06:12:11
CMyView : public CScrollView

我用鼠标选择view中的区域,使docsize放大,并使选择的区域正好位于视图中间,
我定位总是不准确,有偏差,请指教。

部分代码如下:

size.cx *= dScaleH;
size.cy *= dScaleV;

this->GetDocument()->SetDocSize(size);
SetScrollSizes(MM_LOENGLISH, GetDocument()->GetDocSize());

int nLeft = min(m_ptEnd.x, m_ptStart.x);
int nTop = min(abs(m_ptEnd.y), abs(m_ptStart.y));

SetScrollPos(SB_HORZ, (nLeft)*dScaleH);
SetScrollPos(SB_VERT, (nTop)*dScaleV);

m_ptStart, m_ptEnd为选择矩形的对角点。已经DPtoLP了。
dScaleH,dScaleV为放大比例。
...全文
85 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
freespider 2003-10-17
  • 打赏
  • 举报
回复
up
FlyYang 2003-10-17
  • 打赏
  • 举报
回复
用ScrollToPosition函数就可以

---------
++C++
---------
freespider 2003-10-17
  • 打赏
  • 举报
回复
up

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧