Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2012, 15:59   #1
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию Вызов процедуры-ошибка

Доброго времени суток. Подскажите, пожалуйста:
есть фрейм. В нем написана процедура:

Код:
procedure TNewCalcFrame.RoadShow;
var
  colc:integer;
begin
  ADODataSet2.Active:=false;
  RoadList.Clear;
  Visible:=true;
  ADODataSet1.Active:=false;
  ADODataSet1.CommandText:='Select * from Road';
  ADODataSet1.Active:=true;
  ADODataSet1.First;
  for colc := 0 to ADODataSet1.RecordCount-1 do
    begin
      RoadList.Items.Add(ADODataSet1.Fields.Fields[1].asstring);
      RoadList.Items.Objects[colc]:=Pointer(ADODataSet1.Fields.Fields[0].AsInteger);
      ADODataSet1.Next;
    end;
end;
С другой формы вызываю эту процедуру
Код:
procedure TNewRoadForm.NewRoad;
begin
  if Trim(NameRoad.Text)<>'' then
    begin
      adoquery1.Active:=false;
      adoquery1.SQL.Text:='insert into Road (road_name) values('+
        chr(39)+NameRoad.Text+chr(39)+')';
      adoquery1.ExecSQL;
      NewCalcFrame.RoadShow;
      NewRoadForm.Close;
    end
    else
    showmessage('Вы не указали название для новой дороги');
end;
Получаю ошибку:

Цитата:
Project Project2.exe raised exception class EAccessViolation with message 'Access violation at address 005E4340 in module 'Project2.exe'. Read of address 00000338'.
Процедура объявлена в Public
Ошибка выскакивает на первой строчке процедуры и так далее
Что не так?

Последний раз редактировалось googl; 13.05.2012 в 16:02.
googl вне форума Ответить с цитированием
Старый 13.05.2012, 17:51   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Надо весь проект смотреть. Вдруг скажем фрейм не создан...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2012, 17:53   #3
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Надо весь проект смотреть. Вдруг скажем фрейм не создан...
Запускается форма. на ней висит фрейм. на фрейме кнопка, которая открывает другую форму, из которой я и вызываю. все.Кстати, эту же процедуру я вызываю с формы, на которой лежит фрейм и все путем.
googl вне форума Ответить с цитированием
Старый 13.05.2012, 17:56   #4
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Решил вызвать ее из формы на которой этот фрейм и лежит:

HomeForm.NewCalcFrame1.RoadShow;

все заработало
googl вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов процедуры seek ошибка. Delphi DoubleTrouble Помощь студентам 5 30.06.2011 23:05
Вызов процедуры igbizon Общие вопросы Delphi 5 02.09.2008 10:44
Вызов процедуры Stanislav Общие вопросы Delphi 9 22.11.2007 19:01
Вызов процедуры Илья Кибель Помощь студентам 7 17.09.2007 19:43