powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DBGridEh и уничтожение формы при открытом PopupMenu
4 сообщений из 4, страница 1 из 1
DBGridEh и уничтожение формы при открытом PopupMenu
    #40136454
ahmed sultanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, коллеги.
В моем проекте используется компонент TDBGridEh.
Борюсь и никак не могу победить проблему:

Есть форма ("vF"), в которой расположен DBGridEh и эта форма закрывается сторонним событием (предположим - по таймеру).
В обработчике события:
vF.close;
vF.Free;

Проблема возникает если в момент срабатывания обработчика на форме открыто контекстное меню, вызываемое на DBGridEh-е.
Происходит Access Violation
(где то в безднах исходников самого GridEh-а:
procedure TGridAxisDataEh.CheckUpdateAxises;
begin
Grid.CheckUpdateAxises;
end;)

Судя по всему при закрытии контекстного меню выполняется какое то обращение к форме vF (которая к тому моменту уже vF.Free).
Для обычного TDBGrid равно как и для прочих vcl-компонентов ничего подобного не происходит.

Вопрос:
1. Нет ли какого то механизма позволяющего закрыть контекстное меню и ДОЖДАТЬСЯ его закрытия
Закрыть меню
Если меню.закрыто то
vF.close;
vF.Free;

2. Может быть есть какой то способ обработать эту ошибку в самом GridEh?

Спасибо
...
Рейтинг: 0 / 0
DBGridEh и уничтожение формы при открытом PopupMenu
    #40136461
pizmon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ahmed sultanov,

В OnClose формы нужно написать Action := caFree

Free формы не вызывать.
...
Рейтинг: 0 / 0
DBGridEh и уничтожение формы при открытом PopupMenu
    #40136545
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что если попробовать в обработчике освобождать попап ?
...
Рейтинг: 0 / 0
DBGridEh и уничтожение формы при открытом PopupMenu
    #40136571
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ahmed sultanov
Борюсь и никак не могу победить проблему:

Что плохого происходит, когда Вы используете существующий со времён Delphi 1 специально для решения этой задачи TForm.Release?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DBGridEh и уничтожение формы при открытом PopupMenu
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]