2
私のアプリケーションでは、ユーザーがFormAのリストに曲を連続して追加できるようにしたい。 FormBは、追加された曲をラベルとして表示します。他のフォームにデータを渡して、フォームを更新する
ラベルリストの作成方法はわかっていますが、残念ながら追加された曲はFormBに表示されません。 Songが追加されるたびにFormBを更新する方法が必要なので、FormBは常に最新です。
これは私が試したものです:
public void createPlaylist() {
for (int i = 0; i < songList.getSongList().size(); i++) {
Button temp = new Button(songList.getSongList().get(i).toString());
listCont.add(temp); //add Buttons to the List-Container for every Song in the List
}
centerCont.removeComponent(listCont);
centerCont.removeComponent(bottomCont); //remove Containers to add the updated ones (?)
centerCont.add(listCont).add(bottomCont); //add updated Containers
}
を新たに追加ボタンが表示されるはずFormBはそれをやっていないので、これは、動作しません。
どうすればよいですか?
FormAで曲を追加した後、別のボタンを押してFormBに移動し、FormAで追加されたすべての曲を表示しますか? 'centerCont.add(listCont).add(bottomCont);'の後に 'FormB.revalidate()'を呼び出そうとしましたか? FormAで曲を追加する際に使用したコードはどこですか? 'songList.getSongList()'が空でないことを確認しましたか? – Diamond
こんにちは、FormAで私は、リストに曲を追加し、FormBを表示するボタンを押し、ボタンはまた、上記の関数(createPlaylist)を呼び出します。私はrevalidateを追加しようとしましたが、何も変更しませんでした。コンソールにListを記録するとSongが出力されるので、Listは空ではないようです。それにlistContを追加した後で、もう一度FormにcenterContを追加する必要がありますか? –