Simulink.sdi.registerCursorCallback

Укажите коллбэк для перемещений курсора в Инспекторе Данных моделирования

    Описание

    пример

    callbackID = Simulink.sdi.registerCursorCallback(func) указывает функцию обратного вызова, сопоставленную с указателем на функцию func с Инспектором Данных моделирования. Инспектор Данных моделирования выполняет коллбэк, когда вы перемещаете курсор или изменяете количество курсоров, отображенных на панели Inspect.

    пример

    callbackID = Simulink.sdi.registerCursorCallback(func,view) указывает функцию обратного вызова, сопоставленную с указателем на функцию func с Инспектором Данных моделирования. Инспектор Данных моделирования выполняет коллбэк, когда вы перемещаете курсор или изменяете количество курсоров, отображенных на панели, заданной view.

    Примеры

    свернуть все

    Можно использовать Инспектора Данных моделирования функция обратного вызова курсора, чтобы отправить данные о позиции курсора в приложение, вы создаете использование App Designer. В этом примере показано, как добавить свойство в приложение, чтобы сохранить ID коллбэка и где указать и не указать коллбэк курсора. Для примера приложения App Designer, которое использует коллбэк курсора, смотрите, Синхронизируют Курсоры в Инспекторе Данных моделирования с Приложением App Designer.

    Добавьте callbackID свойство к объекту приложения.

    properties (Access = private)
        callbackID
    end

    Задайте поведение функции обратного вызова курсора.

    methods (Access = public)
        function myCursorCallback(app,~,~)
            if isvalid(app)
                ...
            end
        end
    end

    Укажите коллбэк курсора в приложении startupFcn. Этот пример указывает тот же коллбэк на панели Inspect и панели Compare.

    function startupFcn(app)
        app.callbackID = Simulink.sdi.registerCursorCallback(...
           @(t1,t2)myCursorCallback(app,t1,t2));
        app.callbackID(2) = Simulink.sdi.registerCursorCallback(...
           @(t1,t2)myCursorCallback(app,t1,t2),'compare');
        ...
    end

    Не укажите коллбэк курсора в приложении UIFigureCloseRequest функция.

    function myAppUIFigureCloseRequest(app, event)
        Simulink.sdi.unregisterCursorCallback(app.callbackID(1));
        Simulink.sdi.unregisterCursorCallback(app.callbackID(2));
        
    end

    Входные параметры

    свернуть все

    Коллбэк курсора, чтобы указать в виде указателя на функцию. Функция, которая соответствует указателю на функцию, должна принять два входных параметра, t1 и t2, это соответствует левым и правым позициям курсора. Когда никакие курсоры не отображены, t1 и t2 NaN. Когда только один курсор отображен, t2 isnan.

    Пример: id = Simulink.sdi.registerCursorCallback(@(t1,t2)myFunc(t1,t2)) указывает функциональный myFunc как коллбэк для событий курсора на панели Inspect Инспектора Данных моделирования.

    Типы данных: function_handle

    Источник события курсора в виде 'inspect' или 'compare'.

    • 'inspect' — Укажите коллбэк для событий курсора на панели Inspect.

    • 'compare' — Укажите коллбэк для событий курсора на панели Compare.

    Зарегистрированный коллбэк курсора выполняется для каждого события курсора. События курсора имеют место, когда вы перемещаете курсоры или изменяете количество видимых курсоров.

    Типы данных: char | string

    Выходные аргументы

    свернуть все

    Зарегистрированный ID коллбэка, возвращенный как скаляр. Используйте ID коллбэка, чтобы не указать коллбэк.

    Введенный в R2021a
    Для просмотра документации необходимо авторизоваться на сайте