把你传进来的坐标和原有的坐标进行比对,因为x1,y1和x2和y2同时只有一处会发生变动。不变的一端即为没有拖动的一端,则另一端即为拖动的一端
解决方案 »
- java中怎么获取modaldialog的返回值
- IBE预定机票出现问题(急!!!!!!!!!!!!!)
- 路径问题
- 编程中遇到的难题
- 中文字符串怎么比较大小
- 如何获得javax.swing包?急!急!急!
- 拿到java的源代码怎么编译,.class文件怎么打开?
- tomcat 3。1--4。0 乱码问题
- 紧急: think in java里6.1章里的第二程序(原码见内)执行后,最后一行为什么会显示castille = Constructed
- vaj for linux 怎样在linux下安装
- (初学者提问,勿笑话)怎么把我的java程序编译成2进制代码?
- Java 怎么更改控件的????谢谢!!
传进来的只是一个鼠标点,怎么对比?
矩形,圆等都实现了,就是线段有问题!就是你拖动的时候
不知道是
line.x2 = last.x;
line.y2 = last.y;
还是
line.x1 = last.x;
line.y1 = last.y;
按你的说明,我的理解是,你要使用鼠标拖动端点来进行resize操作,
当进行resize时,开始时是一定要确定到底是哪个端点要进行拖动的,比如,用户可以通过如下方式来拖动:(1)点击要拖动的端点(2)按住鼠标并移动到想要的目的地(3)释放鼠标完成拖动。
如果这样的话,可以给端点引入状态,简单的就是静止和拖动两种,
当拖动完成后,根据端点的状态来决定当前鼠标坐标应该是哪个端点的。或者还有这种方式,当确定了哪个端点要进行拖动时,将该端点注册到拖动事件的
控制器,当完成拖动后,由拖动控制器将鼠标坐标赋值给注册的端点。方法估计还有不少的,不过我觉得中心思想就是在用户确定要改变哪个端点的位置时
你要记录下来(不管是改变端点状态,还是象一个控制器注册该端点),在完成拖动
以后,根据鼠标当前坐标和前面记录的端点来执行相应的操作。
然后在函数中进行resize动作现在没办法知道到底拖动的是那个点?
现在关键就是不是很想搞这个标准点,因为这样的化,影响了整体的安排!
有没有别的办法!
有两个人站在操场上,老师让他们先选好位置,
比如A站在(1,1),B站在(2,2)
然后,老师说:请走到(3,3)位置,你说这个时候是A走过去还是B走过去?还是两个人都走过去?说这个很明白了,你这样的要求显然不能实现,
你应该重新考虑自己的设计。