0

私は、最大 8 つの項目を含むことができる JList を使用して UI に取り組んでいます。論理的には、アプリケーションが制限に達したら JList に追加できないようにしましたが、JList 自体に明示的に制限を設定する方法があるかどうか疑問に思っていました。これは、空のセル (最大 8 個のセル) を再描画して、それらが埋めることができる空のスロットであることを示すために、次にやりたいことに役立ちます。私はこれを行う方法を見つけようとしています (おそらく ListUI を拡張することによって)。これには、空のスペースを表すために JList にプレースホルダー要素を追加する必要はありません。

4

2 に答える 2

2

最も簡単な方法は、(DefaultListModel または AbstractListModel を使用して) リスト モデルを実装することだと思います。モデルには常に 8 つの項目があるというのが私の考えです。それらのすべてに空のメッセージがあります。

モデルに新しいアイテムを追加すると、空のテキストをそのアイテムの特定のテキストに置き換えることができます。モデルは、モデルに追加されたアイテムの数を追跡します。MAX_ITEMS を追加しようとすると、例外などをスローできます。

DefaultListModel の実装は非常に簡単で、インターネット上にたくさんのサンプルがあります。

于 2012-06-04T16:52:12.163 に答える