ホームページ >Java >&#&チュートリアル >JTable で非連続セル選択を有効にする方法

JTable で非連続セル選択を有効にする方法

DDD
DDDオリジナル
2024-11-08 16:41:021009ブラウズ

How to Enable Non-Continuous Cell Selection in JTable?

JTable での非連続セルの選択

JTable では、デフォルトの選択モードでは連続したセルの選択のみが可能です。個別の非連続セル選択を可能にするには、次のアプローチが検討できます。

1. CTRL MOUSE_CLICK:

setSelectionMode(ListSelectionModel.SINGLE_SELECTION) が設定されていない場合、CTRL キーを押しながらセルをクリックすると、複数の不連続なセルを選択できます。

2.変更された ListSelectionModel:

ListSelectionModel は JTable と JList の両方で共有されるため、次の変更された ListSelectionModel を使用できます:

import java.awt.Component;
import java.awt.event.InputEvent;
import java.awt.event.MouseEvent;

import javax.swing.*;

public class NonContSelectionModel extends DefaultListSelectionModel {

    @Override
    protected void processMouseEvent(MouseEvent e) {
        int modifiers = e.getModifiers() | InputEvent.CTRL_MASK;
        MouseEvent myME = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), modifiers, e.getX(),
                e.getY(), e.getXOnScreen(), e.getYOnScreen(), e.getClickCount(), e.isPopupTrigger(), e.getButton());
        super.processMouseEvent(myME);
    }
}

このモデルは、setSelectionModel(新しいNonContSelectionModel()).

デモ:

次のコード スニペットは、変更された ListSelectionModel:

以上がJTable で非連続セル選択を有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。