CScrollView的使用
来源:互联网 发布:谈恋爱软件免费的 编辑:程序博客网 时间:2024/06/11 12:23
1)在VC中如何使用CScrollView类,即让视图具有滚动的功能;
方法 一:新生成的视图类,必须继承CScrollView类,
如下所示:
class CImageProcessingView : public CScrollView
{
……;
}
然后在C*****View中,修改OnInitialUpdate()成员的代码,其中要进行矩形长、宽的设置,如下:
sizeTotal.cx = sizeTotal.cy = 4000;
这边要注意的是,其值不能太小,若太小了,在显示图像时,当图像的规格大小所设置的值时,便无法实现滚动的功能。
void CImageProcessingView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CImageProcessingDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy = 4000;
SetScrollSizes(MM_TEXT, sizeTotal);
方法二:此方法中,以上面的操作大同小异。就是有关于sizeTotal的设置采取了更“自由”的方法,这主要是在面向图像方面的。应用如下:
SetScrollSizes(MM_TEXT,GetDocument()->GetDocSize());
这里将较详细地介绍下GetDocSize()方法,它返回的是一个CSize变量。
CSize GetDocSize() const
{ return m_sizeDoc; }//m-sizeDoc是声明在C*****Doc类的变量,GetDocSize()也是//C*****Doc类中的成员函数。
// 提取图像的大小,设置文档大小
m_sizeDoc = CSize((int) ::DIBWidth(lpDIB), (int) ::DIBHeight(lpDIB));
2) 填充CScrollview背景
1.void CCEditView::OnInitialUpdate()
{
SetScrollSizes(MM_TEXT, CSize(1000, 1000));
CScrollView::OnInitialUpdate();
}
2.在OnDraw中
void CCEditView::OnDraw(CDC* pDC)
{
CRect rc;
GetClientRect(&rc);
CPoint pt = GetScrollPosition();
rc.OffsetRect(pt);
pDC->FillRect(&rc, &CBrush(RGB(150, 150, 150)));
}
一般来说,在onInitialUpdate设置完成后,在OnDraw中把你绘图使用的参数传递给SetScrollSizes(),确定滚动条的范围,此处有一注意事项:在绘图的过程中使用CDC *pDC直接调用绘制,不要使用CClientDC dc(this)的dc来进行绘制,否则将导致滚动条的移动时图形没有任何变化.
- CScrollView的使用
- CScrollView的使用 .
- CScrollView的使用
- [MFC] 使用CScrollView应该注意的地方
- 滚动视图CScrollView类的简单使用
- MFC 滚动条 CSCROLLVIEW的使用
- MFC中CScrollView类的使用以及CScrollView的双缓冲绘图
- 使用CScrollView创建滚动
- 在CScrollView中使用双缓存画图的拖动问题
- CScrollView
- CScrollView
- 使用CScrollView创建滚动条
- 使用CScrollView创建滚动条
- 使用CScrollView创建滚动条
- 使用CScrollView创建滚动条
- CScrollView的32768像素限制
- CView的派生类: CScrollView
- VC在多文本的CDockable中使用CScrollView的问题
- Oracle数据库管理员经常使用的表和视图
- 用C#创建Windows服务(Windows Services)
- 有感于实习3
- JQuery获取和设置Select选项
- [lucene那点事儿]继承RangeFilter编写数字型过滤器
- CScrollView的使用
- 今天开通了CSDN的博客,试用下看看怎么样啊 呵呵
- 删除文件收回
- c# 获取文件路径
- How to install subclipse on Mac OS X
- 去除iframe以及js标签
- 雯雅婷4 PoorSakura vol.4 和poorsakura desktop(雯雅婷桌面精灵)汉化
- 数据库优化 载别人的!嘿嘿
- oracle常用命令汇总