JavaのJTableで選択された領域を取得する方法は何ですか。

JTableコンポーネントをJavaで使用する場合、選択された領域を取得する方法は以下の通りです:1. getSelectedRows()メソッドを使用して選択された行のインデックス配列を取得し、その後、行のインデックスを使用して対応するデータを取得できます。

int[] selectedRows = table.getSelectedRows();

for (int i = 0; i < selectedRows.length; i++) {

int rowIndex = selectedRows[i];

// 根据行索引获取对应的数据

Object[] rowData = new Object[table.getColumnCount()];

for (int j = 0; j < table.getColumnCount(); j++) {

rowData[j] = table.getValueAt(rowIndex, j);

}

// 处理选中的数据

// …

}


2. getSelectedColumns()メソッドを使用して、選択した列のインデックス配列を取得し、その後、列のインデックスに基づいてデータを取得できます。

int[] selectedColumns = table.getSelectedColumns();

for (int i = 0; i < selectedColumns.length; i++) {

int columnIndex = selectedColumns[i];

// 根据列索引获取对应的数据

Object[] columnData = new Object[table.getRowCount()];

for (int j = 0; j < table.getRowCount(); j++) {

columnData[j] = table.getValueAt(j, columnIndex);

}

// 处理选中的数据

// …

}


3. getSelectedCells()メソッドを使用して選択されたセルの配列を取得し、その後、行と列のインデックスに基づいて対応するデータを取得できます。

int[] selectedRows = table.getSelectedRows();

int[] selectedColumns = table.getSelectedColumns();

for (int i = 0; i < selectedRows.length; i++) {

for (int j = 0; j < selectedColumns.length; j++) {

int rowIndex = selectedRows[i];

int columnIndex = selectedColumns[j];

// 根据行列索引获取对应的数据

Object cellData = table.getValueAt(rowIndex, columnIndex);

// 处理选中的数据

// …

}

}


具体の状況に応じて、上記の3つの方法のうち適切なものを選択し、必要な行、列、またはセルのデータを取得することができます。

bannerAds