如何在 Java 中停用 JTable 中的單元格編輯?


JTable JComponent 的子類,用於顯示覆雜的資料結構。JTable 可以遵循模型檢視控制器 (MVC) 設計模式按行和列顯示資料。JTable 可以觸發 TableModelListenerTableColumnModelListenerListSelectionListenerCellEditorListener RowSorterListener 介面。預設情況下,我們可以編輯文字並在 JTable 單元格中修改文字。我們也可以透過呼叫 JTable 類的 editCellAt() 方法來停用表中的單元格編輯,並且該方法必須返回false

示例

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public final class DisableJTableMouseClickTest extends JFrame {
   private JTable table;
   private JScrollPane scrollPane;
   public DisableJTableMouseClickTest() {
      setTitle("DisableJTableMouseClick Test");
      String[] columnNames = {"Country", "Rank"};
      Object[][] data = {{"England", "1"}, {"India", "2"}, {"New Zealand", "3"}, {"Australia", "4"},       {"South Africa","5"}, {"Pakistan","6"}};
      table = new JTable(data, columnNames) {
         public boolean editCellAt(int row, int column, java.util.EventObject e) {
            return false;
         }
      };
      table.setRowSelectionAllowed(false);
      scrollPane= new JScrollPane(table);
      add(scrollPane);
      setSize(400, 275);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new DisableJTableMouseClickTest();
   }
}

輸出

更新於: 2020-02-10

4K+ 瀏覽次數

開啟您的 職業

完成課程以獲得認證

開始
廣告