Показать сообщение отдельно
  #1  
Старый 23.11.2012, 10:28
vladdv89 vladdv89 вне форума
Прохожий
 
Регистрация: 13.10.2012
Сообщения: 3
Репутация: 10
По умолчанию Динамическое задание имен столбцов DBGrid

Написал обработчик события
Код:
OnActivated
, в котором по именам созданных компонентов
образуются названия столбцов
Код:
DBGrid

Код:
	procedure TfmTableData.FormActivate(Sender: TObject);
	var openTable : TTableSpec;
		CountColumns : integer;
	  I: Integer;
	begin
	  openTable:=TTableSpec(DBSchema.Tables.FindComponent(fmListOfTables.Listbox1.Items.Strings[fmListOfTables.Listbox1.ItemIndex]));
	  CountColumns:=openTable.Fields.ComponentCount;
	  //DBGrid1.Columns.:=CountColumns;
	  for I := 0 to CountColumns-1 do
		  begin
			DBGrid1.Columns.Add;
			DBGrid1.Columns[i].Title:=TColumnTitle(openTable.Fields.Components[i].Name);
		  end;
	end;
Но на строке
Код:
			DBGrid1.Columns[i].Title:=TColumnTitle(openTable.Fields.Components[i].Name);
выдает ошибку
Код:
    Access violation at address 0040842 in module 'GuUI.exe'. Read of address FFFCD2E8.
Ответить с цитированием