質問
私はGridBagLayout
を使用してJavaでGUIを作成しています。私はグループへの参照を渡すと、それらのすべてにアクセスすることができるように、私はコンポーネントグループを作成するための方法はありますか?
私はパネルを作成し、そのようにコンポーネントをグループ化すると考えられてきましたが、GridBagLayout
の複雑さを利用した別の方法があった場合、私は思っていた。
本当にありがとうございました!
解決
あなたがそれらを追加しながら、さて、あなたはあなたのグループを収容するためのJLabel、JTextFieldのとのJButtonを持つBeanを作成することができないならば、あなたは常に要素を登録するために、あなたのメインのUIパネルに地図を使用することができます。
のようないくつかの構造Map<K, List<Component>>
Kは、グループの識別子である場合、うまくいくかもしれません。この方法であなたは、彼らがUIに配置されている方法からコンポーネントを解離ます。
他のヒント
あなたは書き込み専用としてパネルを考える必要があります。あなたは、すべての設定と正しいレイアウト制約で、そこにあなたのコンポーネントを栓。あなた(ほとんど)決して行くとコンポーネントのためを検索ます。
その代わり、あなたはセットアップとしてSet
(または類似)にコンポーネントを追加します。そして、あなたは、適切なタスクを実行するために、コレクション上で非常にきれいな優雅なfor
ループを行うことができます。より高度な技術がモデルからコンポーネントをリフレッシュ個々の観察者(リスナー)を持っているだろう。
通常の方法は、あなたが示唆したようにJPanelを使用することです。 JPanelの自体が独自の独立したレイアウトマネージャを有することができることを覚えておいてください。ですから、パネル上の要素を配置するためにJPanelの上でのGridBagLayoutを使用することができます。