Мне нужно поддерживать большой графический интерфейс MATLAB, содержащий довольно много функций обратного вызова, каждая из которых вызывается во многих точках. В какой-то момент я решил переименовать один из обратных вызовов; чтобы не проходить через РУКОВОДСТВО, чтобы вручную изменить каждый пользовательский интерфейс, который его вызывает, я использовал программу превосходную gencode
, чтобы «развернуть» файл .fig s/old_name/new_name/g
и воссоздать .fig.
Кажется, это работает хорошо, за исключением одного: при нажатии на кнопку в группе кнопок я получил сообщение о том, что функция manageButtons
неизвестна. После небольшого поиска я обнаружил, что manageButtons
- это вложенная функция в childAddedCbk
, которая, я полагаю, вызывается GUIDE при создании GUI. Теперь попытка переместить только manageButtons
наружу в свой собственный файл in-the-path также не работает: переданный ему hgroup
является invalid handle object
.
Так ... у кого-нибудь есть обходной путь для этого? Будет оценено любое из следующего:
- изменение всех обратных вызовов в графическом интерфейсе в полуавтоматическом режиме или
- заставить
manageButtons
получить правильный дескриптор, или
- имея
gencode
не сломать все это.
Спасибо
Antony