Главная страница
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.032 c
1-1181049672
maxistent
2007-06-05 17:21
2007.08.12
Импорт процедур из EXE...


4-1172224362
iant
2007-02-23 12:52
2007.08.12
Работа со сканером


4-1172297096
Чапаев
2007-02-24 09:04
2007.08.12
Защита


3-1177508561
DelphiLexx
2007-04-25 17:42
2007.08.12
DBGrid и опция dgEditing


6-1167880831
LFRT
2007-01-04 06:20
2007.08.12
Как с помощью сокетов получить от сервера имя файла