1. 1C / Говнокод #25161

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    процедура расш_таблицаприактивациистроки(элемент)
    простодеревозначений = новый деревозначений;
    простодеревозначений.очистить();
    конецпроцедуры
    //впадает в рекурсию и программа умирает
    
    процедура расш_таблицаприактивациистроки_(элемент)
    простодеревозначений = новый таблицазначений;
    простодеревозначений.очистить();
    конецпроцедуры
    //не впадает в рекурсию

    Чо поцоны, изи рекурсия. УТ 11. Насчет других не тестил.
    При активации строки ТЧ, срабатывает эта процедура. Создаю новое дерево значений, и при его очистки вызывается какой-то общий модуль который я не звал и начинает активировать всю форму - охуенно. соответственно вызывается эта процедура пофторно. При ТЗ такой хуйни нет.

    Запостил: 3oJIoTou_xyu, 06 Декабря 2018

    Комментарии (6) RSS

    • Переведи в CamelCase.
      Ответить
      • ЯНеЛюблюХуяритьТакПотомуЧтоПривыкКрегист розависимостиLuaтамвсесмаленькойбуквы+не надотянутсяпальцемдоссаногошифта
        Ответить
    • У какого-то общего модуля есть процедура, или функция, которая исполняется? А программный код у этой процедуры, или функции есть? И что будет, если в процедуру вместо создания ДЗ поместить вызов процедуры/функции, а создание ДЗ осуществлять уже в ней?

      У формы может быть целая куча событий, которые исполняются при активации строки ТЧ. А ещё может быть подписка на событие.
      Ответить
      • >> У какого-то общего модуля есть процедура, или функция, которая исполняется? А программный код у этой процедуры, или функции есть? И что будет, если в процедуру вместо создания ДЗ поместить вызов процедуры/функции, а создание ДЗ осуществлять уже в ней?

        Само ДЗ вызывает какую-то процедуру из модуля общего назначения, при любой манипуляцией именно с ДЗ. Процедура общего назначения я так понял берет заного и "переактивирует" текущие элементы формы. Из-за этого улетаем в рекурсию. - нахуя? выносил в отдельную процедуру, или просто уже создавал ДЗ на самой форме. ситуация повторяется, если как-то взаимодействовать.
        Но при СЗ и ТЗ такой хуйни нет.

        >> У формы может быть целая куча событий, которые исполняются при активации строки ТЧ. А ещё может быть подписка на событие.
        Мб, надо глянуть.

        Но ище дело в том что я писшу расширение, на дефолт проф УТ11 (не хочу саму кофигурацию переебывать)
        Ответить
        • Не упирай ты в "в ДЗ есть, а в ТЗ нет". Такой финт пишется одной строкой
          Если ТипЗнч(ТвояПеременная) = Тип("ДеревоЗначений") Тогда

          Само ДЗ может вызывать только оторопь у неопытного студента. На все прочие вызовы есть события и подписки на события. Для того, чтобы определить пути устранения проблемы необходимо чётко выявить её источник. Далее - по ситуации.
          Ответить
          • Как выяснилось виноват обработчик ожидания
            Ответить

    Добавить комментарий