有2..n个控件,我移动其中一个控件,想让所有控件也一同移动,但要保持控件的相对位置。 请问用什么方法做比较合适? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.把所有控件放在一个Panel2.获取鼠标移动的的相对值,对所有控件重新赋值 遍历以所要移动的控件为基准,遍历取得其他所有控件对它的相对位置(Top,Left),移动后,重新赋值 还有个前提,所有控件的移动都在那一个控件的 OnMouseMove 里实现。 在OnMouseDown里记住鼠标移动之前的位置,并且设置开始移动标记;在OnMouseMove里设置控件的移动后的位置(当前鼠标X,Y相对于移动之前的偏移量);在OnMouseup中设置停止移动; 可以参考Delphi中全选控件移动的过程吧? 仔细想想这个也不难吧,某个控件无论怎样移动,总是可以分成水平移动和左右移动吧,然后每个控件都变化Left,Top不就可以了吗! Delphi XE2 生成的 exe 文件太大 如何查看已结帖子? 批量导入ORACLE数据。急!在线等 谁能帮我这穷小子,感激不尽(求一本书) 窗体问题 如何让光盘自动播放?象delphi安装盘那样? 如何在注册表上注册自己编写的软件? 剧好答!!!! 如何动态给DBGrid 的 DataSource 属性 赋值 请各位高手帮帮我 TServerSocket等怎样传递图片? javascript如何调用delphi中的变量 请教Delphi指针与对象的问题
2.获取鼠标移动的的相对值,对所有控件重新赋值
在OnMouseMove里设置控件的移动后的位置(当前鼠标X,Y相对于移动之前的偏移量);
在OnMouseup中设置停止移动;