-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Визуализация уровня данных

Среда, 19 Августа 2020 г. 17:33 + в цитатник
ivan1234:
Цитата Fr0sT @
С отображением: помимо грида, можно попробовать с listview, хотя я бы, наверно, сделал paintbox + собственная отрисовка


Начал пробовать этот вариант, и при создании первой таблицы выяснилось что для большого количества строк (8000-12000)это очень трудоёмкий процесс, поскольку каждую строку необходимо вносить вручную, можно конечно и программно, но тогда скорость заполнения онлайн значительно снижается.

Попробовал вернуться к StringGrid1DrawCell, оказалось, что при правильной настройке параметров таблицы многие проблемы описанные ранее вообще отпали, но пока осталась самая существенная - если матрица значений (цветов) больше окна на форме то при скроле таблицы в моём варианте обновляются цвета ячеек. Есть ли возможность это как то побороть. Допускаю что просто код у меня совершенно кривой, или просто событие OnDrawCell невозможно остановить после первого заполнения таблицы?

Кусок моего кода, которым заполняется таблица:

    procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
    Rect: TRect; State: TGridDrawState);
    begin
    with StringGrid1 do
    begin
    s:= Random(255);
    Canvas.Brush.Color:=RGB(s,s,s);
    Canvas.FillRect(CellRect(ACol, ARow));
    end;
    end;
    procedure TForm1.FormPaint(Sender: TObject);
    begin
    for ARow:=0 to 63 do
    for ACol:=0 to 63 do
    StringGrid1DrawCell(Sender,ACol,ARow,Rect,State);
    end;

https://forum.sources.ru/index.php?showtopic=419273&view=findpost&p=3837250

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку