Форум: "Основная";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];
ВнизЗакрасить строку Найти похожие ветки
← →
New (2004-01-07 18:14) [0]Мастера, а как при перемещении курсора по DBGRID"у закрашивать строку, на которую переместился курсор другим цветом?
← →
New (2004-01-09 10:40) [1]Никто не подскажет?
← →
Семен Сорокин (2004-01-09 10:42) [2]надо использовать OnDrawDataCell
← →
New (2004-01-09 11:17) [3]Это понятно.
Непонятно, при каком событии это использовать?
← →
alex_*** (2004-01-09 11:24) [4]В смысле при каком? При этом же.
Лучше OnDrawColumnCell.
← →
Плохиш_ (2004-01-09 11:25) [5]
> New (09.01.04 11:17) [3]
> Это понятно.
> Непонятно, при каком событии это использовать?
Это и есть событие OnDrawDataCell
← →
New (2004-01-09 11:28) [6]Вот я выбрал строку.
procedure TForm1.DBGrid3DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
dbgrid1.SelectedField???????????????????? (какое сво-во?)
end;
Как мне закрасить имеено эту строку?
← →
alex_*** (2004-01-09 11:29) [7]example смотрел?
← →
New (2004-01-09 11:34) [8]Да, там закрашивается только ячейка. А мне нужно, чтобы вся строка.
← →
Плохиш_ (2004-01-09 11:35) [9]
> alex_*** © (09.01.04 11:29) [7]
> example смотрел?
А форум тогда на что, если все будут примеры смотреть и хелпы/мануалы читать? ;-)
← →
Плохиш_ (2004-01-09 11:36) [10]
> New (09.01.04 11:34) [8]
> Да, там закрашивается только ячейка. А мне нужно, чтобы
> вся строка.
Вообще-то в гриде строки состоят из ячеек, если Вы об этом ещё не знали.
← →
sniknik (2004-01-09 11:39) [11]New (09.01.04 11:34) [8]
> Да, там закрашивается только ячейка. А мне нужно, чтобы вся строка.
намек. событие срабатывает для каждой ячейки на экране... (???)
← →
alex_*** (2004-01-09 11:40) [12]>А форум тогда на что, если все будут примеры смотреть и хелпы/мануалы читать? ;-)
А вот когда почитал хелп, посмотрел пример, разобрался и тебе это не подошло, тогда и спрашивать. А так даже отвечать неинтересно.
← →
Вованчик (2004-01-09 11:40) [13]поставь в Options -> dgRowSelect в True
← →
alex_*** (2004-01-09 11:42) [14]P.s. если все будут хелпы и мануалы читать - настанет всеобщее благоденствие.
← →
hfa (2004-01-09 11:42) [15]Просто скачай RxLib и в RxDBGrid обработай событие OnDrawDataCell там в параметрах и color есть и Field так что сможешь легко управлять
← →
Плохиш_ (2004-01-09 11:43) [16]
> Вованчик © (09.01.04 11:40) [13]
> поставь в Options -> dgRowSelect в True
Во!! Гениальный ответ! :-))
← →
New (2004-01-09 11:48) [17]Ага + нельзя редактировать
← →
Плохиш_ (2004-01-09 11:52) [18]2New
Родной, тебе уже ДВА ответа на заданный вопрос дали, пора уже и мозгами пошевелить.
← →
alex_*** (2004-01-09 11:54) [19]//кусок старого кода.
procedure TfMakeComp.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var grd: TDBGrid;
col: Tcolor;
ds: TDataSet;
begin
inherited;
ds:=(sender as TDBGrid).DataSource.DataSet;
if not DrawChkControlIfNeed(Column,Rect) then
Begin
grd:=sender as TDBGrid;
if not(gdSelected in State) then
Begin
if Sign(ds.FieldByName("AFTER_SUMPRICE").AsFloat) = Sign(ds.FieldByName("DISCOUNT").AsFloat) then
col:=clMoneyGreen
else
col:=clInfoBk;
//ячейка выбрана в grid"e
if gdSelected in State then col:=clHighlight;
(Sender as TDBGrid).Canvas.Brush.Color:=col;
End;
grd.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
← →
Игорь Шевченко (2004-01-09 12:20) [20]http://delphi.vitpc.com/helloworld/nogrid.htm
← →
NAlexey (2004-01-09 12:32) [21]Просто разорвали автора ответами.:)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.014 c