0

私は JFace TableViewer を持っています。通常、1 つの列の値は一意である必要がありますが、そうでないことが理にかなっている場合もあります (行がコピーされ、まだ変更されていない場合など)。ただし、その列に重複する値を含む行を強調表示して、重複する値をユーザーに警告したいと思います。これを行う最善の方法は何ですか?LabelProvider は、現在のセルまたはせいぜい現在の行にしかアクセスできないようです。

ありがとう、トーマス

4

1 に答える 1

1

テーブル全体で重複を検出するには、セルのすべてのデータを含むある種のマップまたはセットが必要だと思います。私が行った方法は、そのようなマップをビュー (TableViewer コンテナー) に配置し、ラベル プロバイダーにそのビューへのリンクを保持させることでした (したがって、マップ)。そのため、ラベル プロバイダー内から、重複を検出し、それに応じて応答することができます。

于 2009-12-24T02:15:14.190 に答える