Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) Событие ПриУничтожении (число прочтений - 3854 )
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Событие ПриУничтожении
18. Декабря 2006 :: 15:45
Печать  
исправлен вылет в событии ПриУничтожении для модальных форм (draft)

ИЕС ИЕС ИЕС ИЕС Улыбка
Слава небесам победили Улыбка

С начала моего знакомства с классами, я стал таким ленивым, что лишний раз даже копи-пэйст одних и тех же методов сильно ломает Улыбка

А с чем была связана эта проблема?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #1 - 18. Декабря 2006 :: 15:53
Печать  
С разным порядком уничтожения объектов в модальных и немодальных формах.

Кстати, исправление носит статус "draft", т.е. возможно не является окончательным.
Если что - тады ну да.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #2 - 24. Октября 2007 :: 16:54
Печать  
Миш, а в какой момент должно вызываться событие? При обнулении переменной содержащей класс ТП или при закрытии формы, содержащей контрол?
У меня при втором варианте. И это вроде как неправильно...
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #3 - 24. Октября 2007 :: 17:26
Печать  
Arta писал(а) 24. Октября 2007 :: 16:54:
И это вроде как неправильно...

Обоснуешь?
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #4 - 24. Октября 2007 :: 17:31
Печать  
Для чего создавалось это событие? Одна из основных причин - чтобы иметь возможность сериализовать ТП и сохранить его настройки.
Предположим есть форма с 10 закладками, и одной большой кнопкой - основой для ТП. При перемещении по закладкам я просто делаю ТабличноеПоле = "", и создаю новое ТП на базе этого атрибута. Все хорошо и успешно работает, за исключением одного нюанса, мне приходится в каждой форме перед ТабличноеПоле = "", вручную прописывать ТабличноеПоле.ПриУничтожении()

Т.е., формально табличное поле разрушилось при его обнулении. а событие вызвано не было Печаль
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #5 - 24. Октября 2007 :: 17:53
Печать  
Arta писал(а) 24. Октября 2007 :: 17:31:
я просто делаю ТабличноеПоле = ""

А что такое "ТабличноеПоле".
Почему ТП должно разрушиться при его обнулении?
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #6 - 24. Октября 2007 :: 17:59
Печать  
Пардон, переменная.
ТабличноеПоле = _Форма.СоздатьЭлементУправленияНаФорме(Форма, СоздатьОбъект("МоеТабличноеПоле"), "МойАтрибут")
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #7 - 24. Октября 2007 :: 18:02
Печать  
Уже проверил. А ТП оказывается и не разрушается при смерти переменной Печаль



Активикс - мрет. А ТП нет...
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #8 - 24. Октября 2007 :: 18:04
Печать  
Отож.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #9 - 24. Октября 2007 :: 18:05
Печать  
Эээ... Миш, а по логике так должно быть? Как мне вообще убить ТП?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #10 - 24. Октября 2007 :: 18:11
Печать  
О чем речь, конечно, понятно.

Ты хочешь, при повторной отстройке контрола на том же месте получать событие в связанную с ним форму (та же самая) или класс (в следующий момент времени может быть другим для данного ЭУ).
И это событие должно вызываться до разрушения класса старого контрола и перед созданием нового.

Да, наверное, можно будет сделать... для особо ленивых Подмигивание

Arta писал(а) 24. Октября 2007 :: 18:05:
Эээ... Миш, а по логике так должно быть? Как мне вообще убить ТП?

ТП нельзя убить. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #11 - 24. Октября 2007 :: 18:54
Печать  
Зато можно заменить активиксом Улыбка




P.S. Я не из ленивых Улыбка Я просто люблю пользоваться ООП Улыбка
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Событие ПриУничтожении
Ответ #12 - 24. Октября 2007 :: 22:29
Печать  
ОК.
Будет теперь вызываться при любом разрушении окна ТП.
Лежит там же пока.

P.S.
Любителям ООП посвящается. Подмигивание
И, как говаривал Quan "в связи с прекрасным солнечным утром".
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Событие ПриУничтожении
Ответ #13 - 25. Октября 2007 :: 06:25
Печать  
Остается теперь только дождаться внесения всех твоих изменений в основную ветку Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать