Текущий архив: 2005.12.11;
Скачать: CL | DM;
Внизправильная работа с цветом Найти похожие ветки
← →
DSKalugin © (2005-11-22 13:07) [0]Всем привет. Вот уж не думал что меня занесет в раздел к «Начинающим» :-))
Есть список деталей, которые надо покрасить определенным образом.Взаимозаменяемые (те которые tmpReadQuery.Fields[0].AsString="Y")должны быть одинакового цвета. Общий список может содержать произвольное количество деталей.
Как грамотно вычислять палитру фона для каждого последующего блока взаимозаменяемых деталей?
Если я вычитаю по 255 от белого, то цвет не меняется. Ставлю - 400 - меняется...
if (tpCross=0) then begin
with tmpReadQuery do begin
Close;
SQL.Text:="SELECT YN FROM "ChkCrossLink"(:c1,:c2,"+IntToStr(Vendor_ID)+")";
Prepare;
end;
packColor:=clWhite-2; UseColor:=True;
crList[0].crBgColor:=packColor;
for i:=0 to CrossCount-1 do begin
tmpReadQuery.ParamByName("c1").AsInteger:=crList[i].crInd;
if (crList[i].crBgColor=clWhite) then begin
if UseColor then packColor:=packColor-400;
UseColor:=False;
crColor:=packColor;
crList[i].crBgColor:=crColor;
end
else crColor:=crList[i].crBgColor;
for j:=i+1 to CrossCount-1 do begin
// if (crList[j].crBgColor<>clWhite) then Continue;
tmpReadQuery.ParamByName("c2").AsInteger:=crList[j].crInd;
tmpReadQuery.ExecQuery;
if tmpReadQuery.Fields[0].AsString="Y"
then begin
crList[j].crBgColor:=crColor; //
UseColor:=True;
end;
tmpReadQuery.Close;
end;
end;
end;
← →
Anatoly Podgoretsky © (2005-11-22 14:08) [1]DSKalugin © (22.11.05 13:07)
Всем привет. Вот уж не думал что меня занесет в раздел к «Начинающим» :-))
Ну так и тема вопроса соответсвует. И подача материала тоже, множество неизвестных переменных.
← →
clickmaker © (2005-11-22 14:20) [2]
> Если я вычитаю по 255 от белого, то цвет не меняется. Ставлю
> - 400 - меняется
255 от всех 32-бит? Это слишком мало, чтоб на глаз заметить.
Раскладывай на R,G,B и от них отнимай
← →
DSKalugin © (2005-11-22 14:29) [3]
> множество неизвестных переменных.
да код этот и даром тут не нужен, так просто привел.
достаточно было написать тут
var packColor:TColor;
...
packColor:=clWhite-2;
начало цыкла
packColor:=packColor-400;
конец цикла
Вопрос как с цветом работать. Вернее как его менять правильно.
Подал по другому, пожалуйста, Анатолий. Но не в подаче дело. Уверен на все 100% что вам нечего ответить просто навсего. Так зачем морать страницу?
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.04 c