使用java的面板之间的父子关系
我需要使用JavaSwing和JDK1.6为客户端构建一个桌面应用程序。 要求以父子格式显示元素链(每个元素包含textfield、按钮、标签),如下所示:使用java的面板之间的父子关系,java,swing,Java,Swing,我需要使用JavaSwing和JDK1.6为客户端构建一个桌面应用程序。 要求以父子格式显示元素链(每个元素包含textfield、按钮、标签),如下所示: Parent1 Child1 Child2 Child3 child3.1 child3.2 // indentation will be used to display parent child relationship 这类似于JTree的外观,其中每个节
Parent1
Child1
Child2
Child3
child3.1
child3.2
// indentation will be used to display parent child relationship
这类似于JTree
的外观,其中每个节点都包含按钮、标签等。有关于如何使用swing组件实现这一点的帮助吗 您可以使用简单的垂直
BoxLayout
或GridLayout
(1列多行)只需在每个元素中添加一个EmptyBorder
,其中左偏移量是从元素级别计算出来的(0表示根级别+10表示每个级别向下)。要保留所有JTree功能,还可以在JTree上使用自定义单元渲染器
JTree tree = new JTree(rootVector);
TreeCellRenderer renderer = new YourCellRenderer();
tree.setCellRenderer(renderer);
然后定义自己的渲染器:
class YourCellRenderer implements TreeCellRenderer {
DefaultTreeCellRenderer defaultRenderer = new DefaultTreeCellRenderer();
public YourCellRenderer() {
}
public Component getTreeCellRendererComponent(JTree tree, Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus) {
//return the button, label or JPanel you need to render this node.
}
}
完整示例可用尝试
大纲
,引用;请注意,“要求我们推荐或查找工具、库或喜爱的非现场资源的问题与堆栈溢出无关。”