首页 VC++分割视图编程

VC++分割视图编程

举报
开通vip

VC++分割视图编程 1 分割视图 2 功能模块: 1)分割 2)左右交互 3)右左交互 4)右下交互 5)非模态 6)位置大小 分割视图 3 分割视图 视图分割:静态、动态 静态:视图可以是不同的类,只能改变窗口大小 动态:视图是相同类,窗口大小和数量都可改变 4 类的成员函数: 1)CreateStatic(this, int nRows, int nCols ); 功能描述:用来创建切分窗口 涉及的类: CSplitterWnd类//分割窗口类 5 注: 1)中的row, ...

VC++分割视图编程
1 分割视图 2 功能模块: 1)分割 2)左右交互 3)右左交互 4)右下交互 5)非模态 6)位置大小 分割视图 3 分割视图 视图分割:静态、动态 静态:视图可以是不同的类,只能改变窗口大小 动态:视图是相同类,窗口大小和数量都可改变 4 类的成员函数: 1)CreateStatic(this, int nRows, int nCols ); 功能描述:用来创建切分窗口 涉及的类: CSplitterWnd类//分割窗口类 5 注: 1)中的row, col指定分割的视图个数 2)中指定要关联的视图具体在哪个位置 2)CreateView( int row, int col,RUNTIME_CLASS(关联的类 名),CSize(W,H), pContext ); 功能描述:为静态切分的窗口的网格填充视图。 6 FORM类型对话框的创建 7 FORM类型对话框的创建 8 1、FORM类型对话框的创建 分割视图程序具体步骤: 2、增加成员: 在Mainfrm.h中添加代码: CSplitterWnd m_splitter; 3、在主框架类中 用类向导添加函数OnCreateClient( ) 在此函数中完成代码 关联视图 m_splitter.CreateStatic(this,1,2); m_splitter.CreateView(0,0,RUNTIME_CLASS(FormDlg),C Size(100,100),pContext); 注: FormDlg 为FORM视图类 CFENGEView 为普通视图类 m_splitter.CreateView(0,1,RUNTIME_CLASS(CFENGEView ),CSize(200,100),pContext); return true; 10 设置分割视图宽度 ‰CRect rect; ‰GetClientRect(&rect); ‰Width() Height() 11 两个视图之间交互的实现(难点1) 12 各个类对象的相互调用关系 (重点) (1)获得应用类对象的指针 通过函数AfxGetApp得到应用类对象的指针: CFENGEApp *pApp=(CFENGEApp *)AfxGetApp(); 13 (2)从应用类对象中获得主框架类对象的指针 数据成员m_pMainWnd。 CMainFrame *pfm=(CMainFrame *)AfxGetApp()-> m_pMainWnd; 合并为一条语句实现: 14 (3)在框架类对象中获得当前的视图对象指针 获取分割视图的指针 CFENGEView*pView= (CFENGEView*)pframe ->m_splitter.GetPane(0,1); 15 视图中设置Form对话框中控件属性(难点2) ‰CMainFrame *pframe=(CMainFrame *) AfxGetApp()->m_pMainWnd; ‰CEdit *p1 = (CEdit *) pframe-> m_splitter.GetPane(0,0)-> GetDlgItem(IDC_SHOWPOS); mydlg.Create(this,IDD_DIALOGBAR,CBRS_BOTTOM,IDD_DIALOGBAR); 1、插入资源>Dialog (展开) >选 IDD_DIALOGBAR>新建 对话条使用步骤: 2、在主框架类头文件: CDialogBar mydlg; 3、在主框架类源文件: OnCreate函数中: 17 视图中设置对话条控件属性(难点3) ‰CMainFrame *pframe=(CMainFrame *) AfxGetApp()->m_pMainWnd; ‰CButton *p = (CButton *) pframe-> mydlg. GetDlgItem(IDC_PLAY); 18 设置对话框界面位置及大小 19 设置对话框界面位置及大小 MoveWindow( x, y, nWidth, nHeight) CMainFrame *pfm=(CMainFrame *)AfxGetApp()->m_pMainWnd; C**View *pview=(C**View*)pfm->m_splitter.GetPane(0,1); pdlg->MoveWindow(rect); CRect rect; pview->GetWindowRect(&rect); 20 显示/隐藏非模态对话框界面 21 显示/隐藏非模态对话框界面 pdlg->ShowWindow(SW_SHOW); pdlg->ShowWindow(SW_HIDE); 分割视图 分割视图 分割视图 幻灯片编号 4 幻灯片编号 5 幻灯片编号 6 幻灯片编号 7 幻灯片编号 8 幻灯片编号 9 设置分割视图宽度 两个视图之间交互的实现(难点1) 幻灯片编号 12 幻灯片编号 13 幻灯片编号 14 视图中设置Form对话框中控件属性(难点2) 幻灯片编号 16 视图中设置对话条控件属性(难点3) 设置对话框界面位置及大小 设置对话框界面位置及大小 显示/隐藏非模态对话框界面 显示/隐藏非模态对话框界面
本文档为【VC++分割视图编程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_379182
暂无简介~
格式:pdf
大小:325KB
软件:PDF阅读器
页数:21
分类:互联网
上传时间:2012-12-06
浏览量:6