Почему этот класс MATLAB не держит свои свойства?

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

Вот класс, упрощенный ...

classdef Test

    properties
        Figure
        ButtonA
        ButtonB
    end

    methods    
        function app = Test()       
            app.Figure = figure();

            app.ButtonA = uicontrol('Style', 'pushbutton', ...
                'String', 'Button A', ...
                'Position', [10, 10, 100, 20], ...
                'Callback', @app.PressButton);
            app.ButtonB = uicontrol('Style', 'pushbutton', ...
                'String', 'Button B', ...
                'Position', [10, 120, 100, 20], ...
                'Callback', @app.PressButton);
        end

        function PressButton(app, Button, ~)
            Button
            app.ButtonA
            app.ButtonB
        end
    end
end

Если я позвоню, он откроет рисунок и отобразит номера дескрипторов для кнопок:

>> T = Test
T = 
  Test with properties:

     Figure: 8
    ButtonA: 745.000122070313
    ButtonB: 103.002319335938
>> T.ButtonA
ans = 745.000122070313
>> T.ButtonB
ans = 103.002319335938

Если я нажимаю кнопку A, функция возвращает два пустых значения, как если бы свойства не были установлены:

Button =
          745.000122070313
ans =
     []
ans =
     []

Если я нажимаю кнопку B, функция возвращает значение для кнопки A, но пустое значение для кнопки B:

Button =
          103.002319335938
ans =
          745.000122070313
ans =
     []

Буду очень признателен за любые предложения.

Ответы на вопрос(1)

Ваш ответ на вопрос