Форум: "Начинающим";
Текущий архив: 2009.09.06;
Скачать: [xml.tar.bz2];
ВнизКолонки в TListView Найти похожие ветки
← →
Fr (2009-07-05 10:56) [0]Как подогнать ширину колонки в ListView по содержимому?
← →
Юрий Зотов © (2009-07-05 11:17) [1]
uses
CommCtrl;
procedure TForm1.FormShow(Sender: TObject);
var
i: integer;
begin
with ListView1 do
for i := 0 to Columns.Count - 1 do
SendMessage(Handle, LVM_SETCOLUMNWIDTH, i, LVSCW_AUTOSIZE_USEHEADER)
end;
Если не нужно учитывать ширину текста заголовков колонок, то LVSCW_AUTOSIZE_USEHEADER заменяем на LVSCW_AUTOSIZE.
← →
Fr (2009-07-05 12:10) [2]Спасибо. У меня ListView лежит на PageControl. Если поставить SendMessage на обработчик на Tfrm1.ts1Show, то он замечательно отрабатывает при переключении с вкладки на вкладку, а при создании формы, до того, как я ткнусь на вкладку, не хочет ... Как это победить?
← →
Юрий Зотов © (2009-07-05 12:12) [3]Вызвать тот же обработчик из FormShow.
← →
Fr (2009-07-05 12:41) [4]Обработчик Tfrm1.ts1Show срабатывает до Tfrm1.FormShow. Но, хотя он и посылает SendMessage, все равно не выравнивает ширину колонки по-содержимому. Ширина колонок выравнивается по ширине названия колонки, не учитывая данные Items.
← →
Юрий Зотов © (2009-07-05 12:44) [5]Значит, в момент FormShow еще нет Items. Вывод - вызывать надо сразу после того, как они появляются.
← →
Fr (2009-07-05 12:55) [6]Спасибо! Переклинило меня :)
← →
Юрий Зотов © (2009-07-05 13:07) [7]Возможно, проще делать подгонку в обработчиках AdvancedCustomDraw...
на стадии cdPostPaint (только проследить, чтобы не возникло рекурсии). Тогда все будет подгоняться всегда и автоматически.
← →
Fr (2009-07-05 13:12) [8]с помощью все того же SendMessage?
← →
Юрий Зотов © (2009-07-05 13:14) [9]Конечно.
← →
Эстет (2009-07-05 13:40) [10]Юрий, а в чем отличие SendMessage от ListView.Perform, всмысле от ListView.Perform(LVM_SETCOLUMNWIDTH, i, LVSCW_AUTOSIZE)
← →
Юрий Зотов © (2009-07-05 13:59) [11]> Эстет (05.07.09 13:40) [10]
Для оконных контролов отличия, можно сказать, нет. Для графических - только Perform.
← →
Эстет (2009-07-05 14:06) [12]Ага, ясно.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.09.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c