JTable 的選擇模式主要是靠下列三個函數來做設定。
  1. public void setColumnSelectionAllowed(boolean columnSelectionAllowed)
    設置是否可以選擇此模型中的列。

  2. public void setRowSelectionAllowed(boolean rowSelectionAllowed)
    設置是否可以選擇此模型中的行。

  3. public void setSelectionMode(int selectionMode)
    將表的選擇網要設置為只允許單個選擇、單個連續間隔選擇或多間隔選擇。

經由上述三個函數可以變化出幾種不同的選擇模式。
  1. 選擇多行 (預設值)
    setRowSelectionAllowed(true);
    setColumnSelectionAllowed(false);
    setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

  2. 選擇單一行
    setRowSelectionAllowed(true);
    setColumnSelectionAllowed(false);
    setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

  3. 選擇多列
    setRowSelectionAllowed(false);
    setColumnSelectionAllowed(true);
    setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

  4. 選擇單一列
    setRowSelectionAllowed(false);
    setColumnSelectionAllowed(true);
    setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

  5. 選擇多個儲存格
    setRowSelectionAllowed(true);
    setColumnSelectionAllowed(true);
    setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

  6. 選擇單一儲存格
    setRowSelectionAllowed(true);
    setColumnSelectionAllowed(true);
    setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

  7. 無選擇功能
    setRowSelectionAllowed(false);
    setColumnSelectionAllowed(false);

另外也可以利用下列這二個函數來自動設定勾選的範圍。
  1. public void setColumnSelectionInterval(int index0, int index1)
    選擇從 index0 到 index1 之間(包含兩端)的列。

  2. public void setRowSelectionInterval(int index0, int index1)
    選擇從 index0 到 index1 之間(包含兩端)的行。

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()