社区
Java SE
帖子详情
关于动态生成控件的位置
侠雨飞飞
2006-12-04 05:33:18
AWT或者swing都需要用得布局控制器
如果我想通过拖曳某个控件从而在某个位置动态生成一个控件,是不是做不到?
我感觉好像不行
我现在做工况图的维护,也就是在一张背景图上,用标签来对应测点的位置,各位可有更好的解决方案?
...全文
245
12
打赏
收藏
关于动态生成控件的位置
AWT或者swing都需要用得布局控制器 如果我想通过拖曳某个控件从而在某个位置动态生成一个控件,是不是做不到? 我感觉好像不行 我现在做工况图的维护,也就是在一张背景图上,用标签来对应测点的位置,各位可有更好的解决方案?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
侠雨飞飞
2006-12-07
打赏
举报
回复
若将jPanel3的layout设置为空
我将其中的按钮序列化,然后再反序列化,可以成功,但,向其中动态增加按钮失败(没有显示)
如果不设置为空,可以动态增加按钮,但反序列化时候,按钮位置给重置了
我怀疑是布局控制器的问题
但不知怎么解决
侠雨飞飞
2006-12-06
打赏
举报
回复
static Point origin = new Point();
//鼠标拖动
public void jLabel1_mouseDragged(MouseEvent mouseEvent) {
Point p = jLabel1.getLocation();
jLabel1.setLocation(p.x + mouseEvent.getX() - origin.x, p.y + mouseEvent.getY()
- origin.y);
repaint();
}
//鼠标按下
public void jLabel1_mousePressed(MouseEvent e) {
origin.x = e.getX();
origin.y = e.getY();
}
fool_leave
2006-12-06
打赏
举报
回复
你拖动后要设置被拖动的component的位置
代码贴出来看看,就是拖动的代码
侠雨飞飞
2006-12-06
打赏
举报
回复
jPanel3的layout是采用xYLayout
这个哪里需要特别设置呢?
fool_leave
2006-12-06
打赏
举报
回复
问题在你的layout设置上
侠雨飞飞
2006-12-06
打赏
举报
回复
如果拖曳效果比较难那就算了
现在的问题是,我虽然用鼠标拖动组件到一个新的位置
但是每次我向当前的jpanel里增加新的组件时候
调用
jPanel3.add(jLabel);
jPanel3.validate();
结果原来被拖动的组件又回到拖动前的位置
这个应该怎样避免呢
我现在想用序列化把整个jpanel保存起来
Jeansken
2006-12-05
打赏
举报
回复
留意一下Container.add(comp,index)方法,这个index就是你要插入的位置。
混沌骑士
2006-12-05
打赏
举报
回复
按照你的情况,用borland的xylayout比较好实现 可以具体到x、y轴的坐标
fool_leave
2006-12-05
打赏
举报
回复
从另外一层拖过来其实就是remove和add的动作而已,没什么深奥的
至于虚线来显示拖动对象,这个非常难.严格的来说要通过手动绘制来实现,当然你也可以简单的设置鼠标cursor来实现,就是自己做个带小虚线方框的鼠标.
混沌骑士
2006-12-05
打赏
举报
回复
组件拖拽效果?java恐怕做起来比较困难
侠雨飞飞
2006-12-05
打赏
举报
回复
拖拽的时候,怎么能拖到另外一层,我用xylayout,我想从另外一层把控件拖进来
另外,拖拽时候,怎样才能显示一个虚线的拖动对象?就象windows那样?
多谢~
fool_leave
2006-12-04
打赏
举报
回复
当然可以实现了
既然java可以通过Remove和add方法来添加删除控件,那空间的位置也就不存在问题了。你还可以动态设置它的layout
难点在于怎么确定控件应该添加到layout的什么点上。你说的情况我觉得最好的实现方法是自己实现LayoutManager,这样比较好决定控件被拖曳到什么位置上。
Qt
动态
控件
生成
并布局
Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局Qt
动态
控件
生成
并布局...
LABVIEW中
动态
添加
控件
标题提到的“
动态
添加
控件
”是LabVIEW的一项重要特性,允许用户在程序运行时
动态
地向用户界面(Front Panel)添加、修改或删除
控件
,增强了程序的灵活性和交互性。
动态
添加
控件
通常涉及以下知识点: 1. **VI引用*...
WPF MVVM
动态
创建
控件
在有一些项目中,UI界面上的
控件
有时是在程序运行时才
生成
的。这样的功能在MVVM中也很容易实现。并且可以通过按钮取得其值。 本实例主要实现程序运行时,在界面上
生成
四个
控件
,两个TextBox和两个TextBlock.并且...
WinForm
动态
生成
控件
,
生成
的
控件
并可拖动源码
此例是以在左边点击按钮,在右边
动态
成生Lable
控件
, 此
控件
可拖动,并获取新
位置
的X,Y
位置
。位对只能拖动的区间做了判断。 从网上收集,经测试,此例子完全可以正常运行,调试。 给大家分享。
使用addView方法时,如何保持已有
动态
控件
位置
不被改变
不能使用myImage.layout()方法,来改变
位置
。...而调用addView往布局添加新的
控件
时,是根据layoutparam来重新布局
控件
位置
的。 这里需要用另一种方法:先获取
控件
的layoutparam,改变其中相关的值后,再设置回去。
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章