首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

DBGrid如何改变某列显示的内容而不改变数据表的值

2013-03-27 
DBGrid怎么改变某列显示的内容而不改变数据表的值?DBGrid怎么改变某列显示的内容而不改变数据表的值?例如

DBGrid怎么改变某列显示的内容而不改变数据表的值?
DBGrid怎么改变某列显示的内容而不改变数据表的值?
例如某个字段的值有几种1, 2, 3, 4,我想讲1显示为“数学”,2显示为“语文”,3显示为“物理”,4显示为“化学”。
想通过DBGrid来解决,而不用SQL来解决
[解决办法]
在DBGrid->DataSource->DataSet中添加对应的字段,然后在指定字段的OnGetText事件中处理:

void __fastcall TForm1::Filed1OnGetText(TField *Sender, String &Text, bool DisplayText)
{
if (Sender->DataSet->RecordCount < 1)
{
Text = "";
return;
}

    switch (Sender->AsInteger)
    {
    case 1: Text = "数学"; break;
    case 2: Text = "语文"; break;    
    case 3: Text = "物理"; break;
    case 4: Text = "化学"; break;
    default: Text = ""; break;
}
}

热点排行