Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Вниз

Подскажите, пожалуйста, что не правильно: мне нужно окрасить в   Найти похожие ветки 

 
Larisa   (2002-09-27 20:34) [0]

другой цвет строчки в DBGrid, соответствующие договорам, у которых истек срок действия, использую для этого обработчик события DrawColumnCell:

procedure TForm1.GridLigDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (GridLig.Columns[4].Field.AsDateTime>Date) then

TDBGrid(Sender).Canvas.Brush.Color:=cl3DLight;

if gdSelected in State then
begin
TDBGrid(Sender).Canvas.Brush.Color:= clHighLight;
TDBGrid(Sender).Canvas.Font.Color :=clHighLightText;
end;
TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;

но окрашивания не происходит. Подскажите, пожалуйста, - где ошибка.


 
NP-237   (2002-09-27 20:50) [1]

A DefaultDrawColumnCell
пробовала убирать на else?
Т.е
end else TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;



 
sniknik   (2002-09-27 22:49) [2]

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
with DBGrid1.Canvas do begin
if (ADODataSet1.FieldByName("Region").AsString <> "") and not (gdFocused in State) then
begin
Brush.Color := clLime;
Font.Color := clBtnText;
FillRect(Rect);
TextOut(Rect.Left+2, Rect.Top+2, Column.Field.Text);
end
else
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;


 
Larisa   (2002-10-02 11:34) [3]

пробовала убирать на else
Т.е
end else TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
все равно окраски не происходит, если окрашиваю строки при выполнении другого условия, в котором условие типа:

FieldByName("Region").AsString <> "" - то все получается,

видимо, проблемы возникают если условие - типа:

Columns[4].Field.AsDateTime>Date

Помогите, пожалуйста, разобраться.


 
sniknik   (2002-10-02 12:46) [4]

посмотри в каком формате дату выдает AsDateTime может минуты мешают или даже просто бред выдает (если в базе хранится в формате не соответст. региональным установкам.)

просто переобразуй в строку обе даты (DateTimeToStr) и сравни.



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

Форум: "Базы";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-78309
_VaaL_
2002-10-02 10:53
2002.10.24
Как запаролить програмно?


1-78438
GGWIN
2002-10-15 17:40
2002.10.24
Как перетащить из Експлорера ссылку на форму


4-78740
Endre
2002-09-07 15:45
2002.10.24
Командная строка с правами Админа.


3-78227
BillyJeans
2002-09-30 11:20
2002.10.24
Подскажите простой пример экспорта Table в Excel...


14-78603
Двоечник
2002-10-02 12:29
2002.10.24
Растолкуйте мне эту ЗАДАЧУ !!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский