java swing 如何实现拖拽一根线触发按钮
如图所示,如何用swing实现从一个按钮拖出一条线,周围出现一圈按钮,拖到任意一个按钮松开即可触发此按钮,例如选择颜色,望大神指教,谢谢,分有很多,不够再加...
如图所示,如何用swing实现从一个按钮拖出一条线,周围出现一圈按钮,拖到任意一个按钮松开即可触发此按钮,例如选择颜色,望大神指教,谢谢,分有很多,
不够再加 展开
不够再加 展开
1个回答
展开全部
您好,1)mousepressed的时候,记录下按钮的Loaction,右边面板的location。
2)按钮的drag事件中,通过在按钮的loaction的x,y坐标上增加移动的x,y坐标得到当前的按钮location。
3)mouserelease时,当按钮的location在右边面板之内时(两者的location判断,为了保证效果,还可以考虑右边面板的大小,和按钮本身的大小,来控制按钮不会移出或者部分移出右边面板),将按钮在左侧面板中移除掉,然后在右边面板的相应位置(按钮的Location)添加这个按钮
4)按钮加上了,图片什么的应该就很好处理了。
要是还不行,你看看你用的api中,控件有没有类似于置顶、置底之类的方法。没有用最新的jdk写过swing,不太确定。一般将控件add到容器上,并且设置visiable属性为true的话是没问题的。
2)按钮的drag事件中,通过在按钮的loaction的x,y坐标上增加移动的x,y坐标得到当前的按钮location。
3)mouserelease时,当按钮的location在右边面板之内时(两者的location判断,为了保证效果,还可以考虑右边面板的大小,和按钮本身的大小,来控制按钮不会移出或者部分移出右边面板),将按钮在左侧面板中移除掉,然后在右边面板的相应位置(按钮的Location)添加这个按钮
4)按钮加上了,图片什么的应该就很好处理了。
要是还不行,你看看你用的api中,控件有没有类似于置顶、置底之类的方法。没有用最新的jdk写过swing,不太确定。一般将控件add到容器上,并且设置visiable属性为true的话是没问题的。
本回答被提问者和网友采纳
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询