Главная страница
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.017 c
1-28926
BALU1111
2003-01-30 14:00
2003.02.10
Прозрачная форма


1-28901
XP
2003-01-30 22:26
2003.02.10
Real To String


1-28777
Adolf
2003-02-01 16:36
2003.02.10
TImage


14-29049
Sergo
2003-01-24 10:00
2003.02.10
TeeChart Pro 5


14-29042
Romkin
2003-01-23 11:59
2003.02.10
Интеграл 3/8