50分,你能解决这个令人头疼的问题吗?(关于wf界面的)

tianxingzh 2007-01-19 05:56:44
在panel中绘制小型的图标,比如一个32×24的位图,图片有自己的鼠标up、down、move事件,可以用鼠标拖动,现在的问题是:panel中绘制有多个这样的图标,这些图片大小,形状相同,当拖动其中一个移动时不小心正好移到了另一个图标的正上方,这时候两个图标完全重合(也会出现多个图标重合的情况),怎么也分不开了!
我实现图片移动的原理是:1、鼠标点击图片时记录鼠标的初始位置。
2、鼠标移动时,记录鼠标的位置,计算与初始位置的差值,触发panel的OnPaint事件,移动图片。

那位高手帮帮忙原帖位置:http://community.csdn.net/Expert/topic/5293/5293075.xml?temp=.639187

分在那里。
...全文
196 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
shrinerain 2007-01-20
  • 打赏
  • 举报
回复
原帖太长,懒得看,我也不在乎分数.

不过我觉得你处理OnPaint事件有点不妥.

你应该处理图片本身的MouseDown和MouseMove,MouseUp事件.
在mousedown事件中将标识符置为1.
MouseMove事件检查标识符是否为1,为1则获取当前鼠标位置,以此调整图片位置.
在MouseUp事件中将标志符置为0.

需要注意处理闪烁问题,性能问题.
tianxingzh 2007-01-20
  • 打赏
  • 举报
回复
绝望了,真的没人会么?分在以下的帖子里.
原帖位置:http://community.csdn.net/Expert/topic/5293/5293075.xml?temp=.9447595

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧