Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) Менеджер событий (число прочтений - 7208 )
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Менеджер событий
09. Августа 2008 :: 18:58
Печать  
Артур, в описании Менеджера событий:

ПослатьСобытие(<Издатель>,<ДопПараметр>)
Параметры:
<Издатель> -   контекст окружения в котором возникло событие или контекст экземпляра класса - издателя;

но можно передать всё что угодно, т.е. не обязательно контексты.
Это баг, или ошибка в описании, или мне опять повезло? Улыбка

Еще попутно вопрос: я использовал пример в описании - работает, но когда включена Отладка - вылетает на ПослатьСобытие(). Описание классов у меня в тексте. В модуле обработок не проверял, т.к. нужно именно в тексте из-за перехватчика ГМ. Пример давать?
Одинаково вылетает на 3.0.1.12 и на 2.5.0.6 от 01.08.08
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #1 - 11. Августа 2008 :: 03:19
Печать  
Да, нужен простой тест, четко показывающий проблему.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #2 - 13. Августа 2008 :: 03:42
Печать  
Тест будет или забываем про эту ветку Улыбка ?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #3 - 13. Августа 2008 :: 09:07
Печать  
Не закрываем. Немного запарился, щас вкину конфу на суд форумчан с перехватчиками/подписчиками в ветку выше и сделаю сюда.
Хотя делать там нечего: пример из описания Менеджера событий, только вместо контекста передаем, например, число или строку. В этом был вопрос.
Чуть позже накропаю...
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #4 - 13. Августа 2008 :: 09:14
Печать  
Ты создай баг в багзилле, чтобы не забыть.
Туда и приложишь тест.

В ветке мне баги отслеживать неудобно Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #5 - 13. Августа 2008 :: 09:26
Печать  
artbear писал(а) 13. Августа 2008 :: 09:14:
Ты создай баг в багзилле, чтобы не забыть.

А баг ли это?!!
Если мы подписались на конкретный класс, конкретный метод, то на кой нам обязательно передавать Издателя события? Если кому нужно (классу), то передаем то, что ему нужно, а не лишнюю информацию. У тебя в конфе Менеджер событий используется для вызова событий ГМ - там нужен контекст, а если использовать для событий формы? Контекст нигде не лепится. Впрочем, я об этом писал в ветке выше и описывал неудобство, с которым столкнулся, при использовании Менеджера
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #6 - 13. Августа 2008 :: 09:28
Печать  
Я бы ничего не менял, а просто изменил описание
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #7 - 13. Августа 2008 :: 09:38
Печать  
Изменение описания также можно отнести в баг Улыбка
Делай баг, иначе забудем.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #8 - 13. Августа 2008 :: 09:44
Печать  
Ок! Сделаю тест, и мое видение описания  Улыбка
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #9 - 18. Августа 2008 :: 03:44
Печать  
AndreyM писал(а) 09. Августа 2008 :: 18:58:
Артур, в описании Менеджера событий:

ПослатьСобытие(<Издатель>,<ДопПараметр>)
Параметры:
<Издатель> -   контекст окружения в котором возникло событие или контекст экземпляра класса - издателя;

но можно передать всё что угодно, т.е. не обязательно контексты.
Это баг, или ошибка в описании, или мне опять повезло? Улыбка

Это ошибка в описании, на самом деле здесь можно посылать любые параметры. И это очень удобно.
ДопПараметр - это также неточность, здесь нужно написать "доп.параметры" и поставить 3 точки "...", подразумевая любое нужное количество.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #10 - 18. Августа 2008 :: 05:43
Печать  
Да, именно это и хотел уточнить - нужен Издатель или нет.
Согласен, что очень удобно без издателя, а сразу параметры. Улыбка
Баг создавать или уже определились с ошибкой в описании?
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Менеджер событий
Ответ #11 - 18. Августа 2008 :: 05:45
Печать  
Я уже исправил, указав, что Цитата:
    **Синтаксис:** ПослатьСобытие(Издатель, ДопПараметры ...)

    **Параметры:**

       - Издатель - тип: ГрупповойКонтекст, КОП, любой.
         Как правило, в этом параметре передается либо контекст окружения, в
         котором возникло событие либо контекст экземпляра
         класса-издателя. Но можно передавать любой параметр.

       - ДопПараметры - тип: Любой.
         Любая дополнительная информация, которая будет доступна в методе экземпляра
         класса-подписчика во втором параметре.
         Количество параметров метода зависит от установленного
         ограничения на количество параметров для события/подписчиков.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Менеджер событий
Ответ #12 - 18. Августа 2008 :: 06:14
Печать  
artbear писал(а) 18. Августа 2008 :: 05:45:
Я уже исправил, указав, что Цитата:
   **Синтаксис:** ПослатьСобытие(Издатель, ДопПараметры ...)

   **Параметры:**

       - Издатель - тип: ГрупповойКонтекст, КОП, любой.
         Как правило, в этом параметре передается либо контекст окружения, в
         котором возникло событие либо контекст экземпляра
         класса-издателя. Но можно передавать любой параметр.

       - ДопПараметры - тип: Любой.
         Любая дополнительная информация, которая будет доступна в методе экземпляра
         класса-подписчика во втором параметре.
         Количество параметров метода зависит от установленного
         ограничения на количество параметров для события/подписчиков.

Можно я вставлю свои пять копеек?
Я бы написал так:

ПослатьСобытие(Параметры ...)

    **Параметры:**

       - Параметры - тип: Любой.
         Любая дополнительная информация, которая будет доступна в методе экземпляра
         класса-подписчика во втором параметре.
         Количество параметров метода зависит от установленного
         ограничения на количество параметров для события/подписчиков.

По-моему просто и понятно - просто параметры.
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать