Главная страница
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.024 c
14-28993
Igor_thief
2003-01-26 15:29
2003.02.10
StringGrid


7-29119
Format
2002-12-05 23:38
2003.02.10
386 (бред)


14-29012
BF7ru
2003-01-23 13:45
2003.02.10
Копирование CD-DA


6-28977
Budoudoo
2002-12-14 01:33
2003.02.10
Обмен даными по телефонной линии


1-28757
RomiraS
2003-02-01 11:43
2003.02.10
Простой вопрос...