重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

はじめまして。私は今、JTableで複数のセルを選択するプログラムを作成しています。
JTable.changeSelectionの日本語APIリファレンスを見ると
toggle:true、extend:false指定されたセルが選択されている場合、そのセルを選択解除する。選択されていない場合、そのセルを選択する。
と記載されていた為、
初期化字に
setCellSelectionEnabled(true)
を行い、以下のように
changeSelection(0, 0, false,false);
changeSelection(1, 1, true,false);
とすると、セル(0,0) セル(1,1)以外に セル(0,1) セル(1,0)も選択されてしまいます。
セル(0,0) セル(1,1)の選択(とびとびの選択)を実現するには、どのような手法をとるのがよいのでしょうか?
今のところ、マウスイベント等を使って、メンバ変数に選択状態を記録し、DefaultTableCellRendererを継承したクラスの描画部分で、
そのメンバ変数を利用して、選択状態を更新する方法を検討しているのですが、もう少しシンプルにできればと思っています。

ご教授よろしくお願いいたします。

環境
J2SE 6
OS Windows XP HomeEdition

A 回答 (1件)

> (とびとびの選択)を実現するには


table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
table.setCellSelectionEnabled(false);

この回答への補足

_ranco_さん。ご返答ありがとうございます。
上記コードを初期化時にコンストラクタに実装したのですが、
setCellSelectionEnabled(false)
の影響なのか、選択自体ができなくなってしまいました。
上記関数をどのように利用すると、(とびとびの選択)を実現できるのでしょうか?
ご返答よろしくお願いいたします。

補足日時:2008/03/10 19:24
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!