社区
界面
帖子详情
vc6中如何实现橡皮条选择(rubber banding)?
laofang
2005-09-01 02:34:34
橡皮条选择就是拖动鼠标进行对象选择时,出现一个矩形虚框,常见于绘图软件,windows资源浏览器中文件的选择也是。
CRectTracker类好像不适用于存在多个对象的情况。
网上有一些C#的例子,但VC6我还找不到可供参考的代码。请各位大侠指点,最好有代码.
...全文
206
8
打赏
收藏
vc6中如何实现橡皮条选择(rubber banding)?
橡皮条选择就是拖动鼠标进行对象选择时,出现一个矩形虚框,常见于绘图软件,windows资源浏览器中文件的选择也是。 CRectTracker类好像不适用于存在多个对象的情况。 网上有一些C#的例子,但VC6我还找不到可供参考的代码。请各位大侠指点,最好有代码.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
laofang
2005-09-22
打赏
举报
回复
我现在已完成一个测试程序,基本实现了画图(简单矩形)、鼠标选择、拖动、改变图形大小等功能,基本可用,在此将代码贴出来,请大家指点。
同时也遇到一点问题,请大家指点:
1.双击消息不知为何被屏蔽了。
2.改变图形大小时,如果把左上角的手柄拖过右下角手柄时(所谓invert),手动过程中会留下一些橡皮线;
3.不知为何用SetPaneText不能更新状态栏?
------
简要说明:
1.鼠标四种状态:画图,选择,拖动,track(改变图形大小)
2.画图及其它鼠标形为参考powerdesigner,如点击一个按钮开始画图(OnButtonDrawRect()),右键取消
3.其它看代码,有一些注释,不清楚请跟帖。
代码马上贴出来。
laofang
2005-09-02
打赏
举报
回复
up
laofang
2005-09-01
打赏
举报
回复
to teli_eurydice(哭泣的仙人掌。。。。) :
重载CRectTracker,是可以试一下:
至少要重载HitTest,TrackRubberBand,Track。。。我先试试看。
teli_eurydice
2005-09-01
打赏
举报
回复
CRectTracker
自己重载再修改一下,很好用
dirdirdir3
2005-09-01
打赏
举报
回复
你判断是选中的话就刷新为选中的状态,由选中变为非选中时刷新为非选中状态。
laofang
2005-09-01
打赏
举报
回复
自己up
laofang
2005-09-01
打赏
举报
回复
这个我认真想过,响应WM_LBUTTONDOWN,WM_MOVE和WM_LBUTTONUP消息:
OnLButtonDown:做上左键按下标记;
OnMouseMove:如果左键按下,按你所说的方法用异或方式画矩形虚框;
OnLButtonUp:取消左键按下标记。
没错吧?
我现在是不知道如何在鼠标移动过程中,将选择框中的对象画出带tracker的形状并刷新,请指点。
快乐鹦鹉
2005-09-01
打赏
举报
回复
我一般不用CRectTracker。自己响应鼠标移动和点击事件绘制矩形框,每次绘制新矩形前,将原矩形用异或方式再画一遍。当矩形绘制结束后,用最后的矩形大小位置去选择对象。
C# 控件动态
banding
C# 控件动态
banding
绑定属性 随数据源动态更新
WPF简介-简单数据
banding
WPF简介-简单数据
banding
。后台绑定数据,改变。
Cortex M3 Bit-
banding
简介
Cortex M3 Bit-
banding
简介 介绍了ARM cortex M Bit-
banding
的原理和使用示例
图像处理的Dither和
Banding
颜色抖动
图像处理 颜色抖动
多边形世界
写一个可以交互的OpenGL应用程序,支持用户利用鼠标创建和删除2维多边形...1. 支持基于
Rubber
banding
的交互多边形创建 2. 支持用户
选择
多边形的填充颜色 3. 支持用户移动多边形 4. 支持用户改变多边形单个顶点的位置
界面
15,979
社区成员
115,897
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章