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

Вниз

stringgrid drawcell   Найти похожие ветки 

 
bagos   (2009-09-30 20:01) [0]

Всем привет, помогите разобраться
крашу ячейки в гриде, нужно провести линию в ячейке top-1
 
if Copy(S, 1, 1) = "-" then
     if (ACol >= 5) and (ACol <= 25) and (ARow >= 0) then
     begin

       Canvas.Brush.Color := $00C1C1FF;
       Canvas.FillRect(Rect);

         Canvas.MoveTo(Rect.Left, rect.Top-1);
         Canvas.LineTo(Rect.Right, Rect.Top-1);

       Canvas.TextOut(rect.left + 4, rect.top+1, Copy(S, 2, Length(s) - 1));
     end;


линия то рисуется то пропадает, почему? что то не так делаю походу, помогите решить!


 
Омлет   (2009-09-30 21:45) [1]

Если стоит какой-то режим смешивания цветов, то линия может затираться при повторном выводе.
Поставь Canvas.Pen.Mode := pmCopy;

> if Copy(S, 1, 1) = "-" then

if (Length(S) > 0) and (S[1] = "-") then


 
Омлет   (2009-09-30 21:50) [2]

Ха. Не то ))
Ты ведь пытаешься рисовать не в своей ячейке.

        Canvas.MoveTo(Rect.Left, rect.Top-1);
        Canvas.LineTo(Rect.Right, Rect.Top-1);


 
Омлет   (2009-09-30 21:54) [3]

Рисовать надо только в своей ячейке!
Rect.Top-1 - это уже ячейка выше данной. И если нужна там линия, то в обработчике для той ячейки и рисуй.


 
Омлет   (2009-09-30 21:58) [4]

> (ARow >= 0)

На надо этого. Разве бывает строка < 0? Не бывает.



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
15-1253166116
Andy BitOff
2009-09-17 09:41
2009.11.15
Работа с .pdf


2-1254463160
mfender
2009-10-02 09:59
2009.11.15
Какая-то чуднАя ошибка в Application.CreateForm


15-1252614613
Юрий
2009-09-11 00:30
2009.11.15
С днем рождения ! 11 сентября 2009 пятница


15-1253262614
vajo
2009-09-18 12:30
2009.11.15
Где WinAmp хранит информацию о рейтиге (оценка) песни?


15-1253313038
DVM
2009-09-19 02:30
2009.11.15
Как путь типа SystemRoot ... превратить в нормальный?