Как установить Delphi ListView.Columns[0] для правильного выравнивания?

У меня есть Delphi ListView с ViewStyle:= vsReport. Я отображаю числовые данные и хотел бы выровнять все столбцы по правому краю. Я был в состоянии правильно выровнять все столбцы, кроме столбцов [0]. По какой-то причине столбцы [0] не разрешают taRightJustify. Это позволяет только taLeftJustify.

Можно ли установить столбцы [0] как правильные? Если так, как ты это делаешь?

2 ответа

Решение

TListView изначально не поддерживает то, что вы запрашиваете, из-за ограничения Microsoft, а не ограничения VCL:

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774743.aspx

Выравнивание крайнего левого столбца всегда LVCFMT_LEFT; это не может быть изменено.

Единственный способ выровнять текст столбцов [0] - нарисовать его владельцем.

В противном случае переключитесь на другой элемент управления, например Virtual Treeview.

Обходной путь может состоять в том, чтобы начать добавлять столбец и установить для первого столбца значение 0 с помощью (чтобы сделать его невидимым). Просто помните, что все столбцы теперь находятся в подэлементах.

Другие вопросы по тегам