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

Вниз

Ошибка в Delphi?   Найти похожие ветки 

 
qweqewqe   (2003-02-02 18:06) [0]

Привет всем!Нужно изменить цвет ячейки при нажатии на нее.Т.е. пользователь кликгул на ячейке ее цвет изменился (например на красный) и остался красным,ПОКА ОН НЕ КЛИКНЕТ НА НЕЕ ВТОРОЙ РАЗ (т.е. он остается красным ДАЖЕ при переходе на другую ячейку)!!!!
Пусть Edit1 это некоторое текстовое поле.Я пишу:

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
If edit1.Text="1" then begin
StringGrid1.Canvas.Brush.Color:=clred;
StringGrid1.Canvas.FillRect(Rect);
End;
end;

Все работает нормально!Но,посмотрите что получается,при попытке прокрутить Stringgrid (когда много столбцов или строк)-вся таблица окрашивается в красный цвет.А мне нужно чтобы только выделенная(st) ячейки окрашивались красным цветом.Как это сделать?


 
Palladin ©   (2003-02-02 19:39) [1]

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


 
Набережных С.   (2003-02-02 20:16) [2]

Конечно, в Delphi. Снеси ее и не ставь больше никогда.


 
Eugene1501   (2003-02-02 20:25) [3]

Попробуй так:

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol,
Row: Integer; Rect: TRect; State: TGridDrawState);
begin
if (Edit1.Text="1")and(ACol=XXX)and(ARow=YYY) then
begin
StringGrid1.Canvas.Brush.Color:=clred;
StringGrid1.Canvas.FillRect(Rect);
end;
end;

где XXX и YYY координаты твоей ячейки.




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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
8-28945
MiS
2002-10-22 19:40
2003.02.10
Графика, Tcolor, Palette


14-29091
Anatoly Podgoretsky
2003-01-24 23:26
2003.02.10
Именинники 25 января


6-28981
Verner
2002-12-16 15:34
2003.02.10
Локальный порт для клиента TCP


1-28806
OxOTHuK
2003-02-02 11:00
2003.02.10
Загрузка


14-28994
Checist [root]
2003-01-26 00:43
2003.02.10
Хелпы к дельфам