首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

树型控件,如何能做到自动调整其边界呢

2012-01-12 
树型控件,怎么能做到自动调整其边界呢?就是鼠标点中控件的边界后,可以自由拖动边界以改变控件的大小该怎么

树型控件,怎么能做到自动调整其边界呢?
就是鼠标点中控件的边界后,可以自由拖动边界以改变控件的大小
该怎么做?

[解决办法]
要自己派生控件类或者用SetWindowLong把控件的WindowProc改到自己的函数上。
响应控件的WM_LBUTTONDOWN消息,调用SetCapture捕获鼠标,并调用SetCursor改变鼠标光标形状。
响应控件的WM_MOUSEMOVE消息,根据鼠标位置发送WM_SIZE消息或者用MoveWindow改变控件大小。
响应控件的WM_LBUTTONUP消息,调用ReleaseCapture释放鼠标,并调用SetCursor恢复鼠标光标形状。
[解决办法]
http://www.vckbase.com/document/viewdoc/?id=523
这个里面的例子你看看,适不适合你
[解决办法]
直接接收鼠标的Down和Up事件,然后MoveWindow调整大小不可以吗?

收到鼠标消息后,判断是否是边界(比如在控件的最左边),这里可以设置一个近似值,比如5像素,凡是误差5像素内的都当作边界。

然后判断是那一边,8种方向。

之后就是根据鼠标的移动距离调整控件了。
[解决办法]

探讨
要自己派生控件类或者用SetWindowLong把控件的WindowProc改到自己的函数上。
响应控件的WM_LBUTTONDOWN消息,调用SetCapture捕获鼠标,并调用SetCursor改变鼠标光标形状。
响应控件的WM_MOUSEMOVE消息,根据鼠标位置发送WM_SIZE消息或者用MoveWindow改变控件大小。
响应控件的WM_LBUTTONUP消息,调用ReleaseCapture释放鼠标,并调用SetCursor恢复鼠标光标形状。

[解决办法]
不会,帮顶
[解决办法]
我以前做过这个
用一个 Picture 控件
然后派生出一个类
在 Onsize 中调整树形框的尺寸就可以了
[解决办法]
不知,帮顶

热点排行