首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在1.6中禁用JTable中的所有排序代码

在Java中,可以通过以下步骤在1.6版本中禁用JTable中的所有排序代码:

  1. 创建一个自定义的TableHeader类,继承自JTableHeader类,并重写getTableHeaderRenderer()方法和getTableHeaderUI()方法。这样可以自定义表头的渲染器和UI。
代码语言:java
复制
import javax.swing.*;
import javax.swing.table.JTableHeader;
import javax.swing.table.TableColumnModel;
import javax.swing.table.TableModel;

public class CustomTableHeader extends JTableHeader {
    public CustomTableHeader(TableColumnModel columnModel) {
        super(columnModel);
    }

    @Override
    public TableCellRenderer getDefaultRenderer() {
        return new DefaultTableCellRenderer() {
            @Override
            public void setHorizontalAlignment(int alignment) {
                super.setHorizontalAlignment(SwingConstants.LEFT);
            }
        };
    }

    @Override
    public void updateUI() {
        setUI(new CustomTableHeaderUI());
    }
}
  1. 创建一个自定义的TableHeaderUI类,继承自BasicTableHeaderUI类,并重写paint()方法。在该方法中,可以禁用排序代码。
代码语言:java
复制
import javax.swing.*;
import javax.swing.plaf.basic.BasicTableHeaderUI;
import java.awt.*;

public class CustomTableHeaderUI extends BasicTableHeaderUI {
    @Override
    public void paint(Graphics g, JComponent c) {
        // 禁用排序代码
    }
}
  1. 在创建JTable时,使用自定义的TableHeader类作为表头。
代码语言:java
复制
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumnModel;

public class Main {
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 创建表格数据
        Object[][] data = {
                {"John", "Doe"},
                {"Jane", "Smith"},
                {"Bob", "Johnson"}
        };
        String[] columnNames = {"First Name", "Last Name"};
        DefaultTableModel model = new DefaultTableModel(data, columnNames);

        // 创建表格
        JTable table = new JTable(model);

        // 获取表格的列模型
        TableColumnModel columnModel = table.getColumnModel();

        // 使用自定义的TableHeader类作为表头
        CustomTableHeader tableHeader = new CustomTableHeader(columnModel);
        table.setTableHeader(tableHeader);

        // 将表格添加到窗口中
        frame.add(new JScrollPane(table));

        frame.pack();
        frame.setVisible(true);
    }
}

通过以上步骤,你可以在1.6版本中禁用JTable中的所有排序代码。这样,表格将不再具有排序功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • jTable插件辅助资料

    ==============================================jTable插件================================================ 【】引入jtable <link rel="stylesheet" type="text/css" href="../jtable/themes/lightcolor/blue/jtable.min.css" /> <script type="text/javascript" src="../jtable/jquery.jtable.min.js"></script> <script type="text/javascript" src="../jtable/localization/jquery.jtable.zh-CN.js"></script> 注:jTable插件需要jquery UI插件。之前要引入jQuery和jQueryUI 【】Servlet生成JSON结果 collegeList=collegeBusiness.getListByAll(); //定义数据返回JSON map Map<String, Object> jsonMap = new HashMap<String, Object>(); jsonMap.put("Result", "OK"); jsonMap.put("Records", collegeList); JSONObject result=JSONObject.fromObject(jsonMap); HttpServletResponse response=ServletActionContext.getResponse(); response.setContentType("application/json"); response.setCharacterEncoding("UTF-8"); PrintWriter out=response.getWriter(); out.println(result.toString()); out.flush(); out.close(); 【】jtable要求的返回格式 {  "Result":"OK",  "Records":[   {"PersonId":1,"Name":"Benjamin Button","Age":17,"RecordDate":"\/Date(1320259705710)\/"},   {"PersonId":2,"Name":"Douglas Adams","Age":42,"RecordDate":"\/Date(1320259705710)\/"},   {"PersonId":3,"Name":"Isaac Asimov","Age":26,"RecordDate":"\/Date(1320259705710)\/"},   {"PersonId":4,"Name":"Thomas More","Age":65,"RecordDate":"\/Date(1320259705710)\/"}  ] } 【】当出现异常后的jTable要求的结果 {    "Result":"ERROR",    "Message":"异常信息字符串" } 【】jTable的语法  $('#MyTableContainer').jtable({             //General options comes here             actions: {                 //Action definitions comes here             },             fields: {                 //Field definitions comes here             }             //Event handlers... });      【】jtable初始化 1.定义jTable显示的区域div

    2.在JS中初始化jTable //定义部门表格 $('div#departmentmaincontent').jtable({            title: '部门列表',            selecting: true, //Enable selecting            multiselect: false, //not Allow mu

    04
    领券