таблица SWT отключить сортировку стрелок в заголовке столбца - PullRequest
5 голосов
/ 08 февраля 2011

У меня есть следующий код, который позволяет сортировать столбцы в моей таблице по возрастанию или убыванию.

protected void setSortColumn(GridPanelColumn gridPanelColumn, TableColumn column) {
    table.setRedraw(false);
    // check if already selected
    if (sortGridPanelColumn != null && sortGridPanelColumn == gridPanelColumn) {
        // toggle sort order
        sortAscending = !sortAscending;
    } else {
        // set new sort column
        sortGridPanelColumn = gridPanelColumn;
        sortAscending = false;
        table.setSortColumn(column);
    }
    // set sort direction
    table.setSortDirection(sortAscending ? SWT.UP : SWT.DOWN);
    // refresh table
    tableViewer.refresh();
    table.setRedraw(true);
}

Единственная проблема состоит в том, что когда пользователь щелкает заголовок столбца для сортировки, стрелка заставляет имя столбца расставить точки (например, Ccy .. ^) вместо (CCy1 Amount). Есть ли способ отключить показ стрелок? Я бы предпочел не беспокоиться об изменении размера столбцов сетки, чтобы приспособиться к стрелкам, чтобы точки не образовывались.

Есть идеи, как это сделать?

1 Ответ

5 голосов
/ 08 февраля 2011

Simple!Только не делайте

 table.setSortDirection(sortAscending ? SWT.UP : SWT.DOWN);

Когда вы вызываете этот метод, вы просто указываете SWT, какое изображение использовать.Без этого сортировка все еще работает, но стрелки не показывают.

...