我用ADOQuery 里有个字段Sex SqlServer2K的bit型 在DBGrid里显示为True And False我想修改True=Boy False=Gril;我在 ADOQuery OnSocllAfter里if(ADOQuery-〉FiledByName(“Sex”)-〉ASBoolean)
{
ADOQuery-〉FiledByName(“Sex”)-〉DisplayLabel=“Boy”;
}
eles
{
ADOQuery-〉FiledByName(“Sex”)-〉DisplayLabel=“Gril”;
}可是无效!!帮忙啊
{
ADOQuery-〉FiledByName(“Sex”)-〉DisplayLabel=“Boy”;
}
eles
{
ADOQuery-〉FiledByName(“Sex”)-〉DisplayLabel=“Gril”;
}可是无效!!帮忙啊
when flase then Girl
end
from 表名
begin
if CompareStr(Column.FieldName,'Sex')=0 then begin
if (Column.Field.DisplayText='False') then
DBGrid1.DataSource.DataSet.FieldByName('Sex').DisplayText:='Boy'
else DBGrid1.DataSource.DataSet.FieldByName('Sex').DisplayText:='Gril';
end;
end;
不要在DBGrid上打主意。
在DataSet上打主意。
你在选择的时候decode。将true解码成 “√”将false 解码成 “×”
好像是 select BoolField(True,"√",False,"×") from TableName;
二:
Table1AfterOpen(TDataSet *DataSet)
{
((TBooleanField*)(DataSet->FieldByName("BoolField")))->DisplayValues = "√;×";
}