В данном проекте создается список структуры полей соответствующей таблицы, с использованием массивов Fields и IndexDefs, который затем отображается в компоненте ListBox. Демонстрационный проект (dbbrowsr.dpr) решает эту задачу несколько иначе. Вы можете сравнить две версии этого кода.
Примечание: Данный код работает только в 16-битной среде.
procedure TForm1.Button1Click(Sender: TObject); const MyFielddefs: array[ftUnknown..ftGraphic] of string [8] =
for i := 0 to Table1.FieldCount - 1 do begin Definition := Table1.Fields[i].DisplayLabel; Definition := Definition + ' ' + MyFieldDefs[Table1.Fields[i].DataType]; Table1.IndexDefs.Update; if Table1.Fields[i].IsIndexField then begin Indx := Table1.IndexDefs.Indexof(Table1.Fields[i].Name); if Indx > -1 then if ixPrimary in Table1.IndexDefs[Indx].Options then Definition := Definition + ' (Первичный)'; end; Listbox1.Items.Add(Definition); end;end;