设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> Visual C++ >> 【CSplitterWnd技巧三】能拖动的带背景颜色的分割条
精品推荐
Visual C++点击TOP10
·用WINSOCK实现聊天室的VC++程序设计
·利用mfc编写activex控件
·用vc实现生产者消费者问题
·DirectX8.0
·C/C++ 大量经典编程书籍下载
·VC快捷键大全
·CreateFileMapping的MSDN翻译和使用心得
·Windows环境下的麦克风录音系统
·挂钩Windows API
·如何开发OPC Server
编程开发点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·ASP.NET 程序中常用的三十三种代码
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·java笔试题
·Modem 常用AT指令集
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

【CSplitterWnd技巧三】能拖动的带背景颜色的分割条

作者: 来源:网络文章 时间:2005-12-13 17:17:57

【CSplitterWnd技巧三】能拖动的带背景颜色的分割条(2) }

CMySplitter::~CMySplitter()
{
}

BEGIN_MESSAGE_MAP(CMySplitter, CSplitterWnd)
 ON_WM_LBUTTONDOWN()
 ON_WM_MOUSEMOVE()
 ON_WM_RBUTTONDOWN()
END_MESSAGE_MAP()

void CMySplitter::OnLButtonDown(UINT nFlags, CPoint point)
{
 //拖动splitter拖动条,能够拖动窗口
 ::PostMessage(AfxGetMainWnd()->GetSafeHwnd(),WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,point.y));
 CWnd::OnLButtonDown(nFlags,point);
}

void CMySplitter::OnMouseMove(UINT nFlags, CPoint point)
{      
 //跳过调用CSplitterWnd::OnMouseMove,因为他会引起光标的改变
 CWnd::OnMouseMove(nFlags, point);
}

BOOL CMySplitter::PreCreateWindow(CREATESTRUCT& cs)

 //窗口类名必须在类的域类有效,否则::CreateWindowEx得到的是无效的类名。
 //将会导致创建文档失败的错误。

 m_clsName = AfxRegisterWndClass(0, ::LoadCursor (NULL,
  IDC_ARROW), ::CreateSolidBrush(RGB(255,95,17)));
 
 cs.lpszClass = (const char* )m_clsName;
 return CSplitterWnd::PreCreateWindow(cs);
}
==================================================

 

说明:
1,要实现用拖动条拖动窗口,不能简单的用技巧2介绍的OnNcHitTest返回HTCAPTION来解决。因为这样只能拖动分割窗口,不能拖动主窗口。这里用在左键按下的时候 ::PostMessage(AfxGetMainWnd()->GetSafeHwnd(),WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,point.y)),通过给主窗口发送带HTCAPTION的WM_NCLBUTTONDOWN消息来实现。

2,默认的分割窗口的类名是AfxMDIFrame42d,它和MDI程序中的主窗口差不多,没有背景刷。在这里注册了一个新的窗口类,并指定了背景刷。要注意的是,窗口类名不能在PreCreateWindow中申明,应该放在类的申明中,作为类的成员函数。

共2页 9 7 [1] [28 :>

【CSplitterWnd技巧三】能拖动的带背景颜色的分割条 相关文章:
【CSplitterWnd技巧三】能拖动的带背景颜色的分割条 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com