如何创建同一面板的多个实例并单独更改每个实例的属性?

时间:2015-08-07 19:13:00

标签: java swing jpanel

是否可以制作Jpanel,将变量放入其中,然后将相同的面板添加到内容窗格的倍数(基于GUI外部某个变量的数量的次数)。然后单独编辑每个实例内的内容?

这就是为什么我需要做上面提到的事情:我正在编写一个程序,几个不同的诊所可以在用户端使用最少的设置。他们指定他们有多少卧室,我的程序自动创建每个卧室的视觉表示。例如:诊所有13个房间,所以我的程序将13个卧室的Jpanel添加到内容窗格,并使用全屏视图以数字顺序显示它们。

2 个答案:

答案 0 :(得分:1)

不,你不能这样做。每个JComponent(包括JPanel都可以包含一个且只有一个父级。)

您可以使用JTable并将您的面板作为表格的单元格渲染器来“伪造”它,但只有在面板内部没有交互式控件时才能生效。

您需要做的是创建一个工厂,在您需要时为您生成这些JPanel,然后创建您需要的数字或创建一个新的JPanel子类,其中包含所有内容你喜欢并添加新的实例。

答案 1 :(得分:0)

我还是Swing和Java的新手,但我想你可以用扩展JPanel的所有变量创建一个单独的类,然后有一个所述类的ArrayList,然后.add然而你的客户端放了很多如果没有一些识别它们的方法,你可能无法单独编辑它们。