回 帖 发 新 帖 刷新版面

主题:关于字段类型的显示问题

通过下面的语句读取并显示字段类型
  for j:=1 to ADOquery1.FieldCount-1 do
    begin
     StringGrid1.Cells[i,j]:=ADOQuery1.fields.Fields[j].datatype;
    end;
错误提示:  Incompatible types: 'String' and 'TFieldType'
若换成:StringGrid1.Cells[i,j]:=GetEnumName(TypeInfo(TFieldType),Integer(ADOQuery1.Fields.Fields[i].DataType));
错误提示: Undeclared identifier: 'GetEnumName'
求教各位应该怎么解决这个问题呢

回复列表 (共4个回复)

沙发

TFieldType类型其实是一个枚举类型,你可以用variant类型的变量接收!他返回的是当前字段类型在枚举类型中的位置值

板凳

我用了vartostr将它的类型进行转换,可以调通,但是怎么类型显出来都是数字呢

3 楼

数字表示这种字段类型在TFieldType 枚举类型中的位置。你应该知道枚举类型是怎么定义的吧!

4 楼

那要用显示出他的类型值要怎么去做呢

我来回复

您尚未登录,请登录后再回复。点此登录或注册