Eclipse の Windowbuilder で Window を作成しました。ウィンドウには、コンテンツ パネルと、コンテンツ パネル内の 2 つのスクロール パネルが含まれます。別の方法で 2 つのスクロール パネルに要素を追加したいと考えています。私のコードは次のようになります(関連する部分のみ):
public window() {
contentPane = new JPanel(); // Plus some methods like setLayout or setBorder for the contentpane
JScrollPane scrollPane1 = new JScrollPane();
contentPane.add(scrollPane1);
JScrollPane scrollPane2 = new JScrollPane();
contentPane.add(scrollPane2);
}
public static void addItems(ArrayList<String> list)
{
Window w = new Window();
for(String s : list)
{
w.contentPane.scrollPane1.addElement(s);
/* Normally it should be something like this, but I just get access
to the contentPane and cannot add anything directly to the ScrollPanes. */
}
}
単一のコンポーネントへの直接アクセスを拒否する特別な設定はありますか?
編集: @summerbulb のおかげで、メソッドにいくつかの変更を加えましたaddItems
。現在は次のようになっています。
public static void addItems(ArrayList<String> appList)
{
WindowAppsAndHardware w = new WindowAppsAndHardware();
Component[] components = w.contentPane.getComponents();
Component component = null;
for(String s : appList)
{
for (int i = 0; i < components.length; i++)
{
component = components[i];
if (component.getName().equals("scrollPane1"));
{
Label lbl = new Label();
lbl.setName(s);
component.addElement(lbl);
/*Here I want to add the Label to the component,
but component dont have the `addElement`-Method.*/
}
}
}
}