vjp
دوشنبه 04 اردیبهشت 1385, 12:06 عصر
باسلام به دوستان:
من جدولی دارم که دارای سه فیلد boolean میباشد و یک dbgrid هم به آن متصل است. میخواهم در صورتیکه فیلدی دارای مقدار true میباشد با رنگ خاصی در dbgrid نمایش داده شود. تا اینجای کار برای یک فیلد هیچ مشکلی ندارم اما وقتی که برای سه فیلد میخواهم این کار صورت بگیرد رنگ آمیزی فیلدها آن طور که میخواهم نمیشود کد نوشته شده در رویداد Ondrawcolumncell برای dbgrid به این شکل است:
if (Aadotable1.FieldByName('bim').AsBoolean) then // bim: سومین فیلد در دی بی گرید
dbgrid1.Canvas.Font.Color:=clred;
if (datacol=3) then
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State);
if Aadotable1.FieldByName('tax').AsBoolean then //tax: چهارمین فیلد در دی بی گرید
dbgrid1.Canvas.Font.Color:=clred;
if (datacol=4) then
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State);
خواهشمندم در صورت امکان کمک کنید با تشکر
من جدولی دارم که دارای سه فیلد boolean میباشد و یک dbgrid هم به آن متصل است. میخواهم در صورتیکه فیلدی دارای مقدار true میباشد با رنگ خاصی در dbgrid نمایش داده شود. تا اینجای کار برای یک فیلد هیچ مشکلی ندارم اما وقتی که برای سه فیلد میخواهم این کار صورت بگیرد رنگ آمیزی فیلدها آن طور که میخواهم نمیشود کد نوشته شده در رویداد Ondrawcolumncell برای dbgrid به این شکل است:
if (Aadotable1.FieldByName('bim').AsBoolean) then // bim: سومین فیلد در دی بی گرید
dbgrid1.Canvas.Font.Color:=clred;
if (datacol=3) then
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State);
if Aadotable1.FieldByName('tax').AsBoolean then //tax: چهارمین فیلد در دی بی گرید
dbgrid1.Canvas.Font.Color:=clred;
if (datacol=4) then
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State);
خواهشمندم در صورت امکان کمک کنید با تشکر