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

为什么不能这样写?解决方案

2012-03-04 
为什么不能这样写????ListBox-Items-Add(GameConfig-ADOQuery-FieldByName(序号))[BCC32 Error] Un

为什么不能这样写????
ListBox->Items->Add(GameConfig->ADOQuery->FieldByName('序号')); 


[BCC32 Error] Unit.cpp(80): E2034 Cannot convert 'TField *' to 'UnicodeString'
  Full parser context
  Unit.cpp(78): parsing: void _fastcall TGameConfig::ListBoxClick(TObject *)

[解决办法]
ListBox->Items->Add(GameConfig->ADOQuery->FieldByName('序号')->AsString);


[解决办法]
字段类型加上,或者用FieldValue
[解决办法]
GameConfig->ADOQuery->FieldByName("序号") 返回的是一个TField对象,类型为TField *,而ListBox->Items->Add函数要求的参数是String类型,所以你这样代入,就会提示类型不匹配。

用TField对象的AsString方法就可以了

热点排行