社区
界面
帖子详情
如何动态管理splitter
mousubin
2005-10-04 11:58:36
如题
...全文
132
1
打赏
收藏
如何动态管理splitter
如题
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
csuc20
2005-10-14
打赏
举报
回复
不知道你的动态管理是什么意思,是限制Splitter的移动范围吗?
我自己做了一个限制切分条的移动范围的。
http://blog.csdn.net/csuc20/archive/2005/09/29/492388.aspx
分割窗口后如何限制分割条的移动范围
做一个项目,把一个单文档的窗口分割成左右两列,同时还需要设置左边窗口的最小尺寸。找了很多资料,都是针对对话框或者文档的,试了OnSizing和GetMinMaxInfo,结果对分割窗口无效。后来看到分割窗口的例子有锁定分割条的代码,跟同事讨论了一下,来了灵感。下面是解决办法,其实很简单的,可能以前有人做过吧,不过我在网上没有搜索到,所以把我的做法写出来跟大家分享。
1、新建一个类CMySplitter,基类为CSplitterWnd
2、重载该类的OnMouseMove函数:
void CMySplitter::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
// 限制切分条的运动范围。
if(point.x<228||point.x>600)
{
CWnd::OnMouseMove(nFlags, point);
}
else
{
CSplitterWnd::OnMouseMove(nFlags, point);
}
}
然后就可以跟一般的窗口分割那样去做了,if(point.x<228||point.x>600)这里的范围可以随你去设置了
^_^,够简单吧。
切分窗口就不用讲那么详细了,在MaiFram.h建立切分条对象:
protected:
CMySplitter m_wndSplitter; //切分窗口对象
在MaiFram.cpp中实现窗口切分:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,CCreateContext* pContext)
{
// 创建拆分器窗口
if (!m_wndSplitter.CreateStatic(this, 1, 2))
return FALSE;
if (!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CLeftView), CSize(228, 100), pContext) ||
!m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CDataEditView), CSize(100, 100), pContext))
{
m_wndSplitter.DestroyWindow();
return FALSE;
}
return TRUE;
}
带宽
管理
软件 Bandwidth
Split
ter
使用指南
带宽
管理
软件 Bandwidth
Split
ter
使用指南.pdf
c#
split
ter
隐藏左边窗口
利用
split
ter
控件来实现显示/隐藏左边的控件 ,利用
split
ter
container同理可以实现此功能。
split
ter
已被
split
ter
container逐步替代,见意用后者来分隔窗口
split
ter
vc实现分割视图例子
vc++实现分割视图例子
split
ter
页面的移动条
split
ter
-1.5.1 jquery
页面的移动条
split
ter
-1.5.1 jquery页面的移动条
split
ter
-1.5.1 jquery页面的移动条
split
ter
-1.5.1 jquery
Bandwidth+
Split
ter
1.21汉化版 for 2004/2006 无线用户数
Bandwidth+
Split
ter
1.21汉化版 for 2004/2006 已测试,无限用户
界面
15,978
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章