2 dearm23 dearm23 于 2016.03.31 20:21 提问

MFC CScrollView派生类滚动条位置设置问题

我需要在类视图中框选一个区域,然后以框选的中心为基准显示在视图区的中心,我的思路是,先算出框中心点坐标,然后转换成逻辑坐标,除以框选前图像放大的倍率,再乘上现在要放大的倍率,减去客户区的一半,得到的结果用来设置滚动条的位置,但是出来的结果是,框选左上角的时候是正确的,框选右上角,左下角,右下角都不正确,求大神赐教啊!

3个回答

CSDNXIAON
CSDNXIAON   2016.03.31 20:32

设置滚动条位置
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

dearm23
dearm23 这根本不是我要的答案啊
2 年多之前 回复
devmiao
devmiao   Ds   Rxr 2016.03.31 23:41
VisualEleven
VisualEleven   Ds   Rxr 2016.04.01 17:41

这个跟用滚动条来浏览大图有点类似,codeproject上搜索一下scroll bar bitmap

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
MFC中CScrollView对话框位置及滚动条调整
MFC中CScrollView对话框位置及滚动条调整
[MFC]ScrollDemo程序:CScrollView滚动视图的应用
1. CView的各种派生类:     1) MFC为了方便,还从CView派生出一些具有特殊功能的视图供程序员使用;     2) 其中最常用的有CScrollView、CListView、CTreeView、CHtmlView这四个,分别用来建立可滚动的视图、基于列表的视图、属性视图(资源管理器就是典型的一种)和浏览器视图(浏览器软件常用的一种视图);     3) 这里我们介绍CScr
MFC 单文档显示图片的滑动条问题(CScrollView)
1 所用的方法都是在网上搜罗的。
MFC-CScrollView类详解
CScrollView是带滚动功能的视图的基类。可从CScrollView派生出视图类,实现自动滚动功能。       带滚动功能的视图的基类。可从CScrollView派生出视图类,实现自动滚动功能。     CScrollView类是一个具有滚动性能的CView。你可以在任何一个从CView派生的类 中通过重载消息映射的OnHScroll和OnVScroll成员函数来自己处理标准的滚
MFC CScrollView 对大视图出现滚动条回滚问题的解决
CScrollView类中,若视图尺寸很大。 如100000*100000;void CLOView::OnInitialUpdate(){ CScrollView::OnInitialUpdate(); SetScrollSizes(MM_TEXT, CSize(100000,100000));}那么当拖动滚动框距离稍大一点时,就会出现回滚,即滚动框又回到0位置。原因:CScrollView使用的滚动条时已经"过时"的函数,即SetScrollRange和SetScrollPos函数。当响应WM_VSCR
CView的派生类: CScrollView
调用SetScrollSizes() 让 CScrollView 知道你的“逻辑视图”的大小,获得大小信息后,操纵传递给 OnDraw() 的DC,从而支持滚动          CScrollView 如何运作:         CScrollView ( VIEWSCRL.CPP )                  · m_nMapMode —— 在 SetScrollSizes(
MFC窗口滚动功能 CScrollView类
在利用MFC AppWizard生成工程时,在创建向导的第六步可以吧视类的基类选择为CScrollView。这样,视图窗口就具有滚动功能,当图形在窗口中不能完全显示时,可以通过拖动滚动条来浏览整个窗口中的内容。 而当生成工程时未选择CScrollView作为基类,如果要为其增加窗口滚动的功能,可以手动讲该程序的视类的基类CView修改为CScrollView,这需要修改源程序的几处内容。在C**
MFC中CScrollView类的使用以及CScrollView的双缓冲绘图
昨天遇到一个问题,把从CView继承的视图类,改成基类为CScrollView。 说明:CScrollView这个类用于需要滚动条的场合。我们可以直接用向导生成,在选择视图类的基类时选择CScrollView即可。 如果我们的程序原来用的是CView类,此时想改成CScrollView类,需要稍微做一下修改。   (1)把类声明中把基类CView改成CScrollView类
MFC中把viewl类的基类由CView转换成CScrollView,使用滚动条的方法
VC中已建立了一个view视图,如何改为scroll view视图     第一步:     把你的XXXView.h中CXXXView的基类换成CScrollView     第二步     利用查找置换把XXXView.h和XXXView.c中所有的CView::换成CScrollView::;     第三步     给你的CXXXView类添加OnInitialUpdate虚函
MFC CScrollView中的设备坐标和逻辑坐标转换
CView派生类的说明 CEdit View 实现像便签多行正文编辑器的视图 CFormView 使用对话框控件模板资源来定义用户应用程序接口的滚动视图 CListView 支持重点在列表控件的文档/视图结构的视图 CRecordView 显示对话框控件中的数据库记录的视图 CRichEditView 支持重点在金莲能编辑控件的文档/视图结构的视图 CScrollView 提供