对话框中添加视图方法- CScrollView

                                                  对话框中使用视图方法

        今天工作过程中,又遇到了显示图片问题,为此把以前的代码整理一下,通过使用自定义的类继承CScrollView类,是图片或文字等 等能够通过滑块进行自动操作显示。记录查询~~

     步骤:
1、建立基本对话框程序,添加一个static控件。
2、添加自定义MFC类 CMyView 继承    CScrollView类。
3、在 CMyView 添加接口 创建显示view窗口
//nid static控件 资源ID
 CreateFromCtrl(UINT nID, CWnd* pParent)
{

 if (!pParent || !pParent->GetSafeHwnd())   return FALSE;  CWnd *pCtrl = pParent->GetDlgItem(nID);  if (!pCtrl)   return FALSE;  CRect rcCtrl;  pCtrl->GetWindowRect(rcCtrl);  pParent->ScreenToClient(rcCtrl);  UINT style = ::GetWindowLong(pCtrl->GetSafeHwnd(), GWL_STYLE);  pCtrl->DestroyWindow();

 //设置默认滚动条大小

//一定要设置哦,在创建之前,否侧出错地,正常使用时控制滚动条大小,可以从外面调用设置此接口。

 SetScrollSizes (MM_TEXT,CSize (10 , 10 ));

 return Create(NULL, NULL, style | WS_CHILD | WS_VISIBLE, rcCtrl, pParent, nID, NULL);

}
4、重写以下两个接口

void CMyView ::PostNcDestroy() {  // TODO: 在此添加专用代码和/或调用基类

 //CMyView ::PostNcDestroy(); }

void CMyView ::OnDestroy() {  //CMyView ::OnDestroy();

 // TODO: 在此处添加消息处理程序代码  CWnd::OnDestroy();

}

BOOL CMyView ::OnEraseBkgnd(CDC* pDC) {  // TODO: 在此添加消息处理程序代码和/或调用默认值  return true;  return CMyView ::OnEraseBkgnd(pDC); }

5、然后在继承的类里面做自己想要显示的事情即可。
 
结语:vc 6.0 - vs2008 测试通过~
阅读更多
文章标签: null mfc 测试 工作
个人分类: MFC_VC++
上一篇Windows字符串类型 CHAR* WCHAR* LPSTR LPCSTR ......
下一篇锁屏- 鼠标-键盘-等相关 (转载)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭