Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.12;
Скачать: CL | DM;

Вниз

крашенный stringgrid   Найти похожие ветки 

 
bagos ©   (2007-07-19 22:37) [0]

крашу ячейки в гриде
For i:=2 to 29 do
 begin
   Rect := StringGrid1.CellRect(I, 1);
   StringGrid1.Canvas.Brush.Color := color_1;
   StringGrid1.Canvas.FillRect(Rect);
 end;


при разрешении 1280X1024 в котором я собственно работаю все нормально, принес к заказчику, врубаю у него разрешение 1024X768,сразу появился глюк с прорисовкой ячеек, начали закрашиваться другие ячейки,как решить эту проблему?

еще вопрос: покрасил и каждый раз когда делаю форму неактивной а потом активной то весь грид перерисовывается,можно этого избежать,как?

Спасибо за помощь


 
Loginov Dmitry ©   (2007-07-19 22:45) [1]

Через одно место ты эти ячейки-то красишь!
Думаешь зря разработчики Delphi предоставили возможность обработать событие OnDrawCell?


 
bagos ©   (2007-07-19 22:46) [2]

Loginov Dmitry, дык через него и крашу :)


 
sniknik ©   (2007-07-19 23:04) [3]

> Loginov Dmitry, дык через него и крашу :)
и из какой буквы приведенного кода это видно? или это между букв? т.к. проход в цикле это явно по ячейкам чего в событии отрисовки одной ячейки трудно себе представить.

> можно этого избежать,как?
обрабатывать событие OnDrawCell... правильно обрабатывать, как предусматривалось разработчиками.


 
bagos ©   (2007-07-20 00:27) [4]

если честно, то так и не могу разобраться как правильно красить ячейки.
Или имееца ввиду красить каждую отдельно без циклов, но это геморой покрасить сотни ячеек по одной, Мне кажетсяя чего то недопонимаю...
Прошу подсказать как "правильно обрабатывать"


 
Kostafey ©   (2007-07-20 00:39) [5]

const Rect: TRect;

В области Rect и есть ячейка.


> Или имееца ввиду красить каждую отдельно без циклов, но
> это геморой покрасить сотни ячеек по одной

Задаем какое-то условие.
Например, по столбцам такие-то цвета или по значениям записей,
номерам строк, да как угодно.


 
Anatoly Podgoretsky ©   (2007-07-20 00:49) [6]

> bagos  (20.07.2007 00:27:04)  [4]

Циклы не нужны, обработчик вызывается для каждой отдельной ячейки.


 
sniknik ©   (2007-07-20 00:58) [7]

> но это геморой покрасить сотни ячеек по одной
геморрой это написать по обработчику на каждую ячейку... но этого тебя делать никто не заставляет. один же на все это, имхо, проще некуда...


 
Германн ©   (2007-07-20 02:37) [8]


> bagos ©   (20.07.07 00:27) [4]
>
> если честно, то так и не могу разобраться как правильно
> красить ячейки.
>

Вот эт точно!
Налицо - полное непонимание принципов отрисовки окон Windows.



Страницы: 1 вся ветка

Текущий архив: 2007.08.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
11-1167918954
First
2007-01-04 16:55
2007.08.12
Уничтожение таймера в OnTimer.


1-1179609104
Dmitry_177
2007-05-20 01:11
2007.08.12
Длина строки


2-1184245623
ScorpioN2
2007-07-12 17:07
2007.08.12
Поменять имя программе


3-1177497099
snaks
2007-04-25 14:31
2007.08.12
Объединение ячеек в DBGrid


15-1184343965
SkySpeed
2007-07-13 20:26
2007.08.12
Объясните плиз работу 2-х ядерного процессора...