Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

เราจะป้องกันการเรียงลำดับคอลัมน์ใหม่ของ JTable ใน Java ได้อย่างไร


JTable เป็นคลาสย่อยของ JComponent class และสามารถใช้สร้างตารางที่มีข้อมูลแสดงในหลายแถวและหลายคอลัมน์ . เมื่อค่าถูกเลือกจาก JTable TableModelEvent ถูกสร้างขึ้น ซึ่งจัดการโดยใช้ TableModelListener อินเตอร์เฟซ. โดยค่าเริ่มต้น เราสามารถจัดลำดับคอลัมน์ใหม่ใน JTable ได้ เราไม่สามารถอนุญาตให้ผู้ใช้เรียงลำดับคอลัมน์ใหม่โดยใช้ table.getTableHeader().setReorderingAllowed() วิธีการ และตั้งค่าเป็น เท็จ .

ตัวอย่าง

import java.awt.*;
import javax.swing.*;
public final class JTableColumnReorderingTest extends JFrame {
   JTable table;
   JScrollPane scrollPane;
   public JTableColumnReorderingTest() {
      setTitle("JTableColumnReordering Test");
      String[] columnNames = {"Name", "Mobile Number", "Course"};
      Object[][] data = {{"Raja", "123456789", "Java"}, {"Adithya", "456123789", ".Net"}, {"Vineet",       "789456123", "Java Script"}, {"Archana", "987456321", "Python"}, {"Krishna", "321456987",             "Scala"}, {"Jai", "456321789", "ServiceNow"}};
      table = new JTable(data, columnNames);
      scrollPane= new JScrollPane(table);
      table.getTableHeader().setReorderingAllowed(false); // not allow re-ordering of columns
      table.getTableHeader().setResizingAllowed(false);
      add(scrollPane);
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JTableColumnReorderingTest();
   }
}

ผลลัพธ์

เราจะป้องกันการเรียงลำดับคอลัมน์ใหม่ของ JTable ใน Java ได้อย่างไร