Здравствуйте, NikSmol, Вы писали:
NS>Достаточно часто у ListView (или имитаций под него?) вижу такое поведение:
NS>если ни одного элемента в ListView нет, то в клиентской области ListView пишется некоторая строка, выровненная по центру: "Список сообщений пуст", "Нет данных для отображения", и т.д.
NS>Причем это не элемент ListView — его невозможно выделить, да и текст пересекает границы колонок.
NS>Как правильнее отобразить такую строку в пустом ListView?
NS>Заранее спасибо, Смолянинов Никита.
procedure TmxListViewEx.WndProc(var Message: TMessage);
begin
inherited;
if Message.Msg = 20 then
if Items.Count = 0 then
begin
FInvalidateNeeded := True;
//Calculate Position and DrawText - 'There Are no Items to Display in This View'
end
else
if FInvalidateNeeded then
begin
Invalidate;
FInvalidateNeeded := False;
end
if Message.Msg = 4127 then
Invalidate;
end;
procedure TmxListViewEx.Resize;
begin
inherited;
if FInvalidateNeeded then Invalidate;
end;
WBR,
Pavel