Изменения в Matlab GUI 2009a-> 2011b? - PullRequest
0 голосов
/ 20 декабря 2011

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

Это работало нормально под Matlab 2009a, но после обновления до Matlab 2011b оно сломалось.

Под Matlab 2011b значение MenuItem изменяется в обратном вызове, но это измененное значение, по-видимому, не распространяется в Switch-Case.

Есть идеи об изменениях между 2009a и 2011b, которые могли бы это вызвать, и обходные пути для них? Я попытался прочитать примечания к выпуску, но не смог найти ничего, что могло показаться актуальным.

(я ценю, что это немного неортодоксальный способ структурирования GUI, он рождается из опыта программирования командной строки)

1 Ответ

2 голосов
/ 20 декабря 2011

Я не думаю, что API-интерфейс GUI изменился в MATLAB с 2009a по 2011b. Если изменения MenuItem не распространяются на случаи switch, то следует проверить, что операторы case, с которыми вы сравниваете, все еще действительны. Вы должны как минимум разместить свой код около оператора switch, чтобы поставить более разумный диагноз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...