Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Исключение

12K
26 февраля 2006 года
dark_n
9 / / 14.02.2006
У меня есть исходники на делфи.Программа подключается к sql серверу(ado) ,выполняет запрос и выводил результат на грид.Её писал не я(я пишу на с# а делфи не знаю), в иходниках трудно что понять ,да комментор мало.Кнопки создаются на основе данных,записанных в файл xml.При нажатии на любую кнопку вылетает исключение : Project MyProject.exe raised exception class EOleException with message 'BOF или EOF
имеет значение TRUE, либо текущая запись удалена.Для выполняемой операции
требуется текущая запись' и .Курсор переноситься на файл adodb ,как будто там ошибка.
В пелпе не нашел подобной ошибки ...да я смысла-то её не понимаю.Может у кого есть соображения по этому поводу, поделитесь ..?

Вот код на нажатие кнопок
Цитата:
procedure TMainForm.OnQueryItemClick(Sender: TObject);
var
newitem: TMenuItem;
begin
newitem:=TMenuItem.Create(nil);
MainMenu.Items[0].Add(newitem);
newitem.OnClick:=OnWndItemClick;
newitem.Caption:=Conf.selectSingleNode('//Config/Queries/*[@id="'+IntToStr(TMenuItem(Sender).Tag)+'"]').attributes.getNamedItem('name').nodeValue;
(!!!) newitem.Tag:=Integer(TQForm.Create(Application,Conf.selectSingleNode('//Config/Queries/*[@id="'+IntToStr(TMenuItem(Sender).Tag)+'"]'),TButton(Sender),newitem));
TButton(Sender).Enabled:=false;
end;
);


(!!!)на этой строке возникает исключение.
спасибо.

5
26 февраля 2006 года
hardcase
4.5K / / 09.08.2005
А что такое Conf и почему Sender приводят то к TButton, то к TMenuItem?
Хотелось бы знать, кто вызывает это событие...

Кроме того, почуму 2 раза вызывается варажение
Conf.selectSingleNode('//Config/Queries/*[@id="'+IntToStr(TMenuItem(Sender).Tag)+'"]')
его значение, всё-таки можно сохранить в переменную.

Ещё есть такие баги в делфи, что слишком сложные выражения в иногда дают осечки...
12K
26 февраля 2006 года
dark_n
9 / / 14.02.2006
Цитата:
Originally posted by hardcase
А что такое Conf и почему Sender приводят то к TButton, то к TMenuItem?
Хотелось бы знать, кто вызывает это событие...

Кроме того, почуму 2 раза вызывается варажение
Conf.selectSingleNode('//Config/Queries/*[@id="'+IntToStr(TMenuItem(Sender).Tag)+'"]')
его значение, всё-таки можно сохранить в переменную.

Ещё есть такие баги в делфи, что слишком сложные выражения в иногда дают осечки...



conf -тип для работы с xml файлом(там все настройки и запросы храняться).Дублирование строк - это не ко мне ,не виноват я и код не мой:).Файл нормальный,пути все проверял сам.Я вообще делфи не знаю, так по работе пришлось..Почему sender то туда то сюда не понял тоже.Так что извините за мутный вопрос :).
Спасибо.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог