grid->SetCellBackgroundColour(i, t, clFind);
grid->Refresh();//без этого изменений не будет видно
Есть ли более легковесный код не хочется каждый раз делать refresh всему гриду из-за одной ячейки можно как-то обновить только текущую ячейку?
Смотрел по форуму там люди советуют SetCellRenderer но там wxGridCellRenderer что-то у меня с ним не выходит изящно и просто. Примеры которые я находил говорили что свой потомок класса wxGridCellRenderer надо создавать - помоему это через чур.
А мне это решение не помогает. Я сделал клеточный автомат (типа игры) на wxGrid. Так вот, в самом начале у меня идёт случайное распределение цвета по клеточкам и там далее в зависимости от некоторых правил клеточки "разряжаются" - то есть становятся менее синими, переходят в чёрный цвет. Так вот, если не обновлять таблицу или обновлять вышеуказанным методом, то при клике на таблицу почему-то весь ряд становится темнее (а это, соответственно, влияет на поведение клеточной модели). Проблему удалось решить только myGrid->ForceRefresh().
А в чём вообще может быть проблему подобного "потемнения"?