我试图找出如何在运行时将项目插入BoxLayout ...或使用不同的小部件/面板/布局实现类似的效果。
应用程序窗口的设计是垂直堆叠多个面板(BoxLayout.Y_AXIS)。然后,用户可以插入或删除面板,以及与面板内的任何窗口小部件进行交互。我希望将它绑定到一个可观察的列表,其中插入了代表每个面板类型的类,并相应地更新了UI。
感谢您的任何指示!
答案 0 :(得分:1)
javax.swing.SwingUtilities将允许您在event dispatcher thread (EDT)
中执行操作 - 必须在EDT
中执行更新UI的所有操作。在您添加组件的容器上添加组件后,也可以毫不犹豫地调用revalidate()
和repaint()
方法,这将允许父组件重新计算所有元素的位置(包括新元素) ),并重绘自己。