行をクリック(マウスイベント)したときにjTableセルに画像を設定する方法は?最初の行を選択すると、その行に画像が表示されます.次に、2番目の行をクリックすると、画像が2番目の行に表示されますか?これを行う方法テーブル セル レンダラーを使用するか、レンダラーを準備しますか?
1529 次
3 に答える
2
画像を表のセルに表示するだけの場合は、デフォルトのレンダラーを使用して、その列が返されるようにしImageIcon
ます。TableModel
ImageIcon.class
クリックに応じて画像を表示する場合は、TablePopupEditor
withのバリエーションを使用しsetClickCountToStart(1)
、画像を として使用することを検討してくださいIcon
。
于 2012-02-10T11:46:25.740 に答える
1
これは、JTable に画像を表示することに関する 4 番目の質問です。その方法は既にご存知だと思います。
したがって、選択が変更されたときに行を更新する場合は、ListSelectionListener を使用する必要があります。次に、リスナーが起動したら、TableModel を更新して前の行からアイコンを削除し、現在の行のアイコンを更新する必要があります。
JList: 前に選択したアイテムは、更新する行番号を取得できることを示しています。
于 2012-02-10T16:26:11.267 に答える
-2
これを行う最善の方法は、独自のテーブル セル レンダラーを作成することです。
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
if(isSelected){
return new Image(); // if selected
}
return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); // if not selected do the normal stuff
}
このようなもの。
于 2012-02-10T10:32:23.667 に答える