2016-06-28 15 views
1

私はを私のGUIに持っています。私たちのシステムには、レジストラがいろいろあります。レジストラがデータを追加すると、このデータはJTableのセルに追加されます。JTable内の各セルに余分な不可視情報を追加

このデータをテーブルに追加するだけでは、レジストリ情報が失われました。この情報は、今後の操作では非常に重要です。

私がしようとしているのは、JTableの各セルに追加の情報(このデータを登録した人物)を追加する必要がありますが、この余分な情報はテーブルに表示しないでください。

簡単に。セルが選択されている場合は、レジストラ情報にアクセスする必要があります。

私はそれが何かのように実装することが可能かどうかわかりませんが、助けや提案をいただければ幸いです。

+0

'私は、余分な情報を追加する必要があります。' - 質問/これは/ 'XxxTableModel'に保存されているデータです(' JTables'ビューでは表示できません)。そうでなければ*** – mKorbel

+0

で気になるでしょう。しかし、各セルは異なるデータを持っています。多かれ少なかれ、 'HashMap'に似ています。セル内の値は一種のキーです。この特定のセルの登録者情報は値のようなものです。なぜなら、私が使っているテーブルは非常に動的なテーブルなので、それ自体が変わります。この理由のため、これらのデータはお互いに結びついている必要があります。 –

+0

OKこれはあなたの決定ですが、2つのモデル(なぜコンテンツがダイナミクスである場合に非常に重要なのでしょうか)が理由(理由)を知らず、AbstractTableModelがこのHashMapに基づいていると仮定することによって、リスト/ LinkedList、残りは@trashgod(いつものように:-) – mKorbel

答えて

3

1つのappproachは、余分な詳細をツールチップに表示することです。記事How to Use Tables: Specifying Tool Tips for Cellsには、各セルのツールヒントテキストを変更する方法を示す完全な例が含まれています。レジストラ情報をTableModelに保存し、getTableCellRendererComponent()で表示されるtableパラメータを使用してTableCellRendererにアクセスしてください。または、に表示すると、hereと表示されます。

+0

あなたの答えをありがとう、ありがとうございました。実際、私の問題は私がここに書いたよりはるかに困難でした。この理由のため、私は自分の問題を別の方法で解決しました。私はこれを私がここに書いたものに対して良い解決策だと思うので、これを解決策として受け入れます。 –

+0

@AdInfinitum:あなたはそれを整理してうれしいです。もしあなたも[あなた自身の質問に答える](http://meta.stackoverflow.com/q/17463/163188)なら私にここでpingし、それに応じて更新します。 – trashgod

+0

主に、 'Map >'を使っています。 'Integer'は、テーブル内のインデックス(最初の行= 0、2番目の行= 1)を表し、対応するインデックスに属するセル(レジストラ情報)を保持します。ユーザーが行番号からセルを編集したい場合は、マップから対応するリストを取得し、列番号を使用してリストからレジストラ情報を取得します。 –

関連する問題