对话框分隔管理器的实现(VC)

时间:2012-02-10 12:11:34
【文件属性】:

文件名称:对话框分隔管理器的实现(VC)

文件大小:348KB

文件格式:RAR

更新时间:2012-02-10 12:11:34

Dialog Split VC

  大家好!这是一个实现对话框分隔条的类和例子代 码,希望对大家有用。      使用场合:将一个对话框分隔成多个子对话框   使用方法如下(例如:水平方向将对话框分隔成两 个子对话框): 1 创建左右两个子对话框类,模板Style: child   2在要划分的对话框头文件中添加如下代码:   //水平方向分隔管理器   CSplitManager m_SplitH;   //左子窗口   左子对话框类 m_LeftWnd;   //右子窗口   右子对话框类 m_RightWnd; 3 在要划分的对话框的OnInitDialog中添加如下代码: /* 添加代码开始 */ //设置分隔条的类型是水平方向的分隔 m_SplitH.SetType(SPLIT_MANAGER_TYPE_H); //设置分隔条的厚度 m_SplitH.SetThickness(5); //设置左窗口 m_SplitH.SetFirstChildDialog( &m_LeftWnd, 40/*左子窗口占父窗口宽度的40%*/, IDD_DIALOGL); //设置右窗口 m_SplitH.SetSecondChildDialog( &m_RightWnd, IDD_DIALOGR); //创建分隔条,左窗口,右窗口 m_SplitH.Create( _T(""), WS_CHILD|WS_VISIBLE|SS_NOTIFY|SS_GRAYRECT/* 分隔条窗口Style*/, this/*分隔条的父窗口*/, 1001/*分隔条ID, 不能重复*/); /* 添加代码结束 */ 4 在将要划分的对话框的OnSize中添加如下代码: if(m_SplitH.m_hWnd) { m_SplitH.AutoAdjustSize(cx/*父窗口的新的 宽度*/, cy/*父窗口的新的高度*/); }      


【文件预览】:
DialogSplit
----CSplitManager()
--------SplitManager.cpp(12KB)
--------SplitManager.h(3KB)
----对话框的单次分隔()
--------test2.sln(880B)
--------release()
--------test2.suo(14KB)
--------test2()
----对话框的多次分隔()
--------DialogSplit.sln(898B)
--------DialogSplit.suo(25KB)
--------release()
--------DialogSplit()

网友评论

  • 亲测,win7,visualstudio2013版本可用,很好的代码
  • 子对话框对象是在子窗口的initDialog函数中初始化的,不太方便,改成传窗口参数进来也很容易,好评!
  • 内容还可以,只是运行起来会出问题。
  • 很不错的,简单明了
  • 用过了不错,简单很好用。感谢分享。(在FrameView下有个小Bug)
  • 是基于单文档的,里面有浮动窗口,并且可以调整大小。WIN7下可以使用。
  • 非常强大,解释也非常明确,谢谢分享
  • 很好的代码,对我的帮助很大,真的!
  • 不错的代码,思路简单清晰,有价值!