假设我使用以下代码在屏幕上绘制了一个正方形:
我希望如果用户点击形状,则在形状上绘制一个带有四个小方框(北,南,东和西)的边框。将鼠标悬停在任何小方框上会将光标更改为调整大小光标,如果用户将小方框拖动到新位置,则会调整形状大小。
请问这怎么办?
答案 0 :(得分:4)
而不是使用drawRect()
方法为矩形创建Shape
对象并绘制Shape
。对于Shape
,您可以使用getBounds()
获取主矩形。使用边界查找小方框矩形(也是形状)。
移动(或拖动)鼠标时,检查其中一个方框形状是否包含鼠标事件坐标。
在拖动时,您可以使用Shape
更改原始AffineTransfrorm
。