GUIDE 마이그레이션 전략
MATLAB®에서 앱을 개발하기 위한 원래의 끌어서 놓기 환경인 GUIDE는 R2025a에서 제거되었습니다. 기존 GUIDE 앱을 계속 실행할 수 있으며, 앱 동작을 변경해야 하는 경우 앱 프로그램 파일을 계속 편집할 수 있습니다.
기존 GUIDE 앱을 계속 사용하고 향후 MATLAB 릴리스와의 호환성을 유지하려면 아래 표에 나열된 권장 사항 중 하나를 사용하십시오.
앱 개발 요구 사항 | 권장 사항 | 세부 정보 |
---|---|---|
개발 작업이 지속적임 | 앱을 앱 디자이너로 마이그레이션합니다. | GUIDE 앱을 앱 디자이너로 마이그레이션하기 |
편집이 간헐적임 | GUIDE가 만든 기존 앱 코드 파일을 사용하여 앱을 편집합니다. | GUIDE 앱 코드 파일 편집하기 |
실행만 필요함 | GUIDE 앱을 계속 실행합니다. | 기존 GUIDE 앱을 실행하려면 앱과 연결된 앱 코드 파일을 실행하십시오. |
또는 GUIDE 앱을 단일 MATLAB 파일로 내보낼 수도 있습니다. 하지만 내보낸 앱은 향후 앱 디자이너로 마이그레이션할 수 없습니다. 자세한 내용은 GUIDE 앱을 MATLAB 파일로 내보내기 항목을 참조하십시오.
GUIDE 앱을 앱 디자이너로 마이그레이션하기
참고
이 기능을 사용하려면 GUIDE to App Designer Migration Tool for MATLAB이 필요합니다.
GUIDE 앱을 앱 디자이너로 마이그레이션하면 앱의 레이아웃을 대화형 방식으로 계속 개발할 수 있습니다. 또한 향상된 UI 컴포넌트 집합 및 자동 재배치 옵션과 같은 기능을 활용하여 앱이 화면 크기의 변화에 반응하도록 할 수 있습니다. 앱을 만들어 웹 앱으로 공유할 수도 있습니다(MATLAB Compiler™ 필요).
이 옵션은 상당한 또는 지속적인 기능 개발을 필요로 하는 GUIDE 앱에 사용하십시오. GUIDE 앱을 마이그레이션하려면 먼저 GUIDE to App Designer Migration Tool for MATLAB을 다운로드하십시오.
앱을 마이그레이션하는 방법은 여러 가지 있습니다.
앱 디자이너에서 앱을 열고 디자이너 탭으로 이동합니다. 파일 섹션에서 열기 > GUIDE to App Designer Migration Tool 열기를 클릭합니다.
MATLAB 명령 창에서
appmigration.migrateGUIDEApp
함수를 호출합니다. 이 함수를 사용하여 여러 GUIDE 앱을 일괄 처리로 마이그레이션할 수 있습니다.
마이그레이션 툴의 기능
마이그레이션 툴은 GUIDE FIG 파일을 읽어 들인 후 상응하는 앱 디자이너 컴포넌트 및 레이아웃을 자동으로 MLAPP 파일로 생성하여 앱을 변환할 수 있게 도와줍니다. GUIDE 콜백 코드와 다른 사용자 정의 함수는 MLAPP 파일로 복사됩니다. 이 반자동적인 코드 변환 단계에서는 수동 코드 업데이트가 필요한 경우 이에 대한 조치를 제안하는 마이그레이션 리포트도 생성해 줍니다. 다음 표에는 툴의 일부 기능이 설명되어 있습니다.
마이그레이션 툴 기능 | 설명 | |
---|---|---|
파일 변환 | GUIDE FIG 파일 및 관련 코드를 읽어 들인 후 앱 디자이너 MLAPP 파일을 생성합니다. 앱 디자이너 파일 이름의 형식은 guideFileName _App.mlapp 입니다. | |
컴포넌트 및 앱 레이아웃 | 컴포넌트와 속성 구성을 이에 상응하는 앱 디자이너 컴포넌트 및 속성 구성으로 변환하고 앱의 레이아웃을 보존합니다. | |
콜백 코드 | GUIDE 콜백 코드 및 사용자 정의 함수의 복사본을 MLAPP 파일에 보존합니다. | |
튜토리얼 | 마이그레이션된 앱에 대한 변경 사항을 순차적으로 확인합니다. | |
마이그레이션 리포트 | 마이그레이션 툴을 통해 성공적으로 완료된 작업을 요약합니다. 앱과 관련한 제한 사항 또는 지원되지 않는 기능을 나열하고 제안된 조치가 있는 경우 이를 표시합니다. |
콜백 코드
GUIDE 스타일의 콜백 코드가 사용자 앱의 앱 디자이너 UI 컴포넌트와 호환되도록 하기 위해 마이그레이션 툴은 convertToGUIDECallbackArguments
라는 함수를 사용합니다. 이 함수는 앱 디자이너 콜백 인수를 사용자 코드에 필요한 GUIDE 스타일의 콜백 인수로 변환합니다. convertToGUIDECallbackArguments
함수는 마이그레이션된 각 콜백 함수의 시작 부분에 추가됩니다. 이 함수는 앱 디자이너 콜백 인수 app
및 event
를 받고 GUIDE 스타일의 콜백 인수 hObject
, eventdata
, handles
를 반환합니다. 예를 들면 다음과 같습니다.
GUIDE 스타일의 콜백 인수는 각각 다른 용도로 사용됩니다.
hObject
는 콜백이 실행되고 있는 객체의 핸들입니다. GUIDE 앱의 컴포넌트UIControl
객체 또는ButtonGroup
객체의 경우hObject
는UIControlPropertiesConverter
객체 또는ButtonGroupPropertiesConverter
객체에 대한 핸들입니다. 이러한 객체는 GUIDE 스타일의 코드가 앱 디자이너 콜백 함수에서 작동하도록 하기 위해 생성되었습니다.eventdata
는 대개 비어 있지만 콜백 이벤트에 대한 특정 정보를 포함하는 구조체일 수 있습니다.handles
는 UI Figure의 마이그레이션된 자식 컴포넌트를 포함하는 구조체입니다. 이들 자식 컴포넌트는'Tag'
속성값 집합을 가집니다. GUIDE 앱의 자식 컴포넌트UIControl
객체는 마이그레이션된 앱에서UIControlPropertiesConverter
객체에 해당합니다. 마찬가지로, 자식ButtonGroup
객체는 마이그레이션된 앱에서ButtonGroupPropertiesConverter
객체에 해당합니다.
UIControlPropertiesConverter
객체 및 ButtonGroupPropertiesConverter
객체는 GUIDE 스타일의 코드와 앱 디자이너 컴포넌트 및 콜백 사이에서 어댑터처럼 동작합니다. UIControlPropertiesConverter
객체는 GUIDE 앱의 각 컴포넌트 UIControl
객체에 대해 생성됩니다. 이러한 converter 객체는 마이그레이션된 앱에서 앱 디자이너 UI 컴포넌트와 연결됩니다. converter 객체는 GUIDE 앱의 원래 UIControl
과 동일한 속성, 동일한 값을 가지지만 연결된 앱 디자이너 UI 컴포넌트에 이러한 속성과 값을 적용합니다.
마찬가지로, GUIDE의 ButtonGroup
객체에 대해서는 ButtonGroupPropertiesConverter
객체가 앱 디자이너에 생성됩니다. 이 객체를 사용하면 SelectedObject
속성을 UIControlPropertiesConverter
객체로 설정하여 버튼 그룹 SelectionChangedFcn
콜백 논리가 작동하도록 할 수 있습니다.
특별 고려 사항
경우에 따라, 앱을 마이그레이션하기 전이나 후에 추가 단계를 수행해야 합니다. 다음 표에는 추가 단계나 수동 코드 업데이트가 필요한 일반 시나리오 및 코딩 패턴이 나와 있습니다. 이는 모든 것이 포함된 종합적인 목록이 아닙니다.
GUIDE 앱 특징 | 설명 | 제안된 조치 |
---|---|---|
다중 창 앱(즉, 데이터를 공유하는 두 개 이상의 앱) | 다중 창 앱에서는 각 앱을 개별적으로 마이그레이션해야 합니다. 마이그레이션된 앱 파일 이름의 끝에는 _App 이 추가됩니다. 다른 앱에서 이러한 앱 호출 시 업데이트가 필요합니다. | 각 앱을 개별적으로 마이그레이션합니다. 호출하는 앱에서 호출되는 앱의 이름을 새 파일 이름으로 업데이트합니다. 또는 |
라디오 버튼 및 라디오 버튼 콜백 | 마이그레이션 툴은 라디오 버튼 그룹을 부모로 갖지 않는 라디오 버튼이나 개별 라디오 버튼에 대한 콜백 함수를 마이그레이션하지 않습니다. | 앱 디자이너에서 버튼 그룹을 만들어 이 버튼 그룹에 라디오 버튼을 추가합니다. 라디오 버튼 선택이 변경될 경우 동작을 실행하려면 해당 버튼 그룹에 대한 SelectionChangedFcn 콜백 함수를 생성하십시오. 자세한 내용은 uiradiobutton 및 ButtonGroup 항목을 참조하십시오. |
ButtonDownFcn , KeyPressFcn 및 KeyReleaseFcn 콜백 | 앱 디자이너에 동등한 콜백이 없으므로 마이그레이션 툴은 UIControl 객체에 대한 버튼 누름 및 키 누름 콜백을 마이그레이션하지 않습니다. | 앱을 마이그레이션한 후 컴포넌트를 기반으로 새 콜백을 만들어 동작을 복제하도록 코드를 업데이트합니다. 예를 들어, 앱에 편집 필드가 있는 경우 해당 컴포넌트에 대해 앱 사용자가 편집 필드에 입력할 때마다 실행되는 컴포넌트에 상응하는 기능의 콜백이 없는 경우에는 UI Figure에 대한 function figure1WindowButtonDown(app,event) if app.figure1.CurrentObject == app.listbox1 % Execute callback code end end |
메뉴 모음과 도구 모음 | 앱 디자이너에서는 디폴트 Figure 메뉴 모음과 도구 모음이 지원되지 않습니다. | 앱 디자이너 컴포넌트 라이브러리의 메뉴 모음 및 도구 모음 컴포넌트를 사용하여 사용자 지정 메뉴 모음과 도구 모음을 만듭니다. 앱이 디폴트 메뉴 모음과 도구 모음에 의존하는 경우 앱 디자이너 앱의 |
uistack | 앱 디자이너로 마이그레이션된 GUIDE 스타일 객체에서는 이 함수를 호출할 수 없습니다. | 앱 디자이너 컴포넌트를 사용하도록 코드를 업데이트합니다. 그런 다음, 이러한 객체에 대해 uistack 함수를 호출할 수 있습니다. 자세한 내용은 마이그레이션된 앱의 콜백 코드 업데이트하기 항목을 참조하십시오. |
findobj , findall , gcbo |
| handles 구조체를 대신 사용하여 컴포넌트를 참조하거나 연결된 앱 디자이너 컴포넌트, 속성, 값을 사용하도록 코드를 업데이트합니다. |
nargin 및 nargchk | 헬퍼 함수는 앱 메서드로 마이그레이션되고 추가 입력 인수로 app 을 가집니다. 이로 인해 nargin 또는 nargchk 논리가 잘못될 수 있습니다. | 검사 값을 1 씩 증분시킵니다. |
OutputFcn(varargout) 및 Figure 출력값 | 앱 디자이너에는 이에 상응하는 기능이 없습니다. 마이그레이션된, 앱 디자이너로 만든 앱을 인스턴스화할 경우 출력값은 |
앱을 인스턴스화할 때 function out = MyGUIDEApp(varargin) app = MyMigratedApp(varargin{:}); out = app.UIFigure; end |
GUIDE 앱이 actxcontrol
과 같은 함수를 사용하여 타사 컴포넌트를 통합하는 경우 Recommendations for MATLAB Apps Using Java and ActiveX를 참조하십시오.
GUIDE 코드와 앱 디자이너 코드의 차이점
앱 디자이너와 GUIDE는 코드 구조 및 콜백 구문이 다르며, UI 컴포넌트에 액세스하고 데이터를 공유하는 기법이 서로 다릅니다. 이러한 차이점을 이해하면 앱 디자이너의 새로운 기능을 마이그레이션된 앱에 추가하거나 앱 디자이너 코드 스타일 및 규칙을 사용하도록 앱을 업데이트하려는 경우에 유용합니다. 다음 표에는 이러한 차이점 중 일부가 요약되어 있습니다.
차이점 | GUIDE | 앱 디자이너 | 추가 정보 |
---|---|---|---|
Figure와 그래픽스 사용 | GUIDE는 GUIDE는 모든 MATLAB 그래픽스 함수가 지원됩니다. 대상 좌표축을 지정할 필요가 없습니다. | 앱 디자이너는 앱 디자이너는 대부분의 MATLAB 그래픽스 함수가 지원됩니다. | 앱 디자이너에서 그래픽스 표시하기 |
컴포넌트 사용 | GUIDE는 | 앱 디자이너는 고유한 전용 함수로 각 UI 컴포넌트를 만듭니다. | 앱 작성 컴포넌트 Update UIControl Objects and Callbacks |
컴포넌트 속성 액세스 | GUIDE는 예: | 앱 디자이너는 예: | 앱 디자이너에서 콜백 사용하기 |
앱 코드 관리 | 코드는 로컬 함수를 호출할 수 있는 메인 함수로 정의됩니다. 모든 코드는 편집 가능합니다. | 코드는 MATLAB 클래스로 정의됩니다. 콜백, 헬퍼 함수, 사용자 지정 속성만 편집 가능합니다. | 앱 디자이너 코드 보기에서 코드 관리하기 |
콜백 작성 | GUIDE에서 생성된 콜백 함수에는 예: | 앱 디자이너에서 생성된 콜백 함수에는 예: | 앱 디자이너에서 콜백 사용하기 |
데이터 공유 | 데이터를 저장하고 이 데이터를 콜백과 함수 간에 공유하려면 예: | 데이터를 저장하고 이 데이터를 콜백과 함수 간에 공유하려면 사용자 지정 속성을 사용하여 변수를 생성하십시오. | 앱 디자이너로 만든 앱 내부에서 데이터 공유하기 |
마이그레이션된 앱의 콜백 코드 업데이트하기
마이그레이션된 앱은 GUIDE 스타일의 객체와 코드 규칙을 사용합니다. 앱 디자이너의 객체와 코드 규칙을 사용하도록 마이그레이션된 앱에서 콜백 코드를 업데이트하는 것이 좋습니다. 콜백 코드를 업데이트하면 최신 앱 작성 기능이 지원되고 앱을 더 쉽게 유지할 수 있습니다. 코드를 업데이트하려면 다음 단계를 따르십시오.
앱 디자이너 UI 컴포넌트 사용 — 콜백 함수에서
app
객체를 대신 사용하도록handles
구조체에 대한 참조를 업데이트합니다.handles
구조체는 GUIDE 앱에서UIControl
객체를 나타내는 converter 객체에 대한 액세스를 제공하는 반면,app
객체는 앱 디자이너 앱에서 UI 컴포넌트에 대한 액세스를 제공합니다.예를 들어, GUIDE 스타일의 콜백은 다음 코드를 사용하여 누름 버튼 스타일의
UIControl
객체에 대한 배경색을 설정합니다.handles.pushbutton1.BackgroundColor = 'red';
다음 코드를 업데이트하여 버튼 UI 컴포넌트의 배경색을 직접 설정합니다.
app.pushbutton1.BackgroundColor = 'red';
UI 컴포넌트 속성 업데이트 — 콜백 코드가 설정하는 속성을 업데이트합니다. 일반적으로,
UIControl
객체와 그에 상응하는 UI 컴포넌트 객체는 동일한 속성을 많이 가집니다. 하지만 속성 이름이나 속성이 받는 값 유형은 다릅니다.UIControl
및 UI 컴포넌트 객체 및 속성 간 비교를 보고 UI 컴포넌트를 사용하도록 코드를 업데이트하는 방법을 알아보려면 Update UIControl Objects and Callbacks 항목을 참조하십시오.사용되지 않는 코드 삭제 — 콜백 함수가
hObject
,eventdata
및handles
인수를 더 이상 사용하지 않으면 이러한 인수를 생성하는 마이그레이션 툴이 추가한 코드 라인을 삭제합니다.[hObject,eventdata,handles] = convertToGUIDECallbackArguments(app,event);
앱이 errordlg
또는 warndlg
와 같은 함수를 사용하여 대화 상자를 만들도록 되어 있는 경우 uialert
및 uiconfirm
과 같이 앱 작성을 위해 특별히 도입된 최신 대화 상자를 활용하도록 코드를 업데이트해 볼 수 있습니다. 자세한 내용은 대화 상자 업데이트하기 항목을 참조하십시오.
GUIDE 앱 코드 파일 편집하기
GUIDE 앱은 다음 두 파일로 구성됩니다.
확장자가
.fig
인 FIG 파일(레이아웃 설명과 누름 버튼, 좌표축, 패널, 메뉴 등의 컴포넌트가 포함됨).확장자가
.m
인 앱 코드 파일(앱 동작을 제어하는 초기화 코드와 콜백이 포함됨).
향후 MATLAB 릴리스와의 호환성을 유지하기 위해 사소한 내용을 변경하는 등 기존 GUIDE 앱을 가끔씩만 편집해야 하는 경우 MATLAB 편집기에서 코드 파일을 편집하여 앱을 유지 관리할 수 있습니다. 이 전략을 사용하여 앱 동작과 앱 레이아웃을 모두 편집할 수 있습니다.
참고
FIG 파일을 직접 편집하지 마십시오. 직접 편집하면 예기치 않은 동작이나 오류가 발생할 수 있습니다.
컴포넌트 태그 식별하기
앱에서 컴포넌트의 모양이나 콜백을 변경하려면 먼저 컴포넌트의 Tag
속성의 값을 식별하십시오. GUIDE에서 생성된 코드는 이 속성의 값을 사용하여 컴포넌트에 액세스합니다. 예를 들어, Tag
의 값이 pushbutton1
인 버튼이 있는 경우 컴포넌트의 콜백 함수 이름은 pushbutton1_callback
이며 handles.pushbutton1
에 액세스하여 객체를 수정할 수 있습니다.
특정 컴포넌트의 Tag
값을 찾으려면 먼저 앱에 대한 Figure
객체를 반환하는 출력 인수를 지정하여 앱을 실행하십시오. 그런 다음, 아래 전략 중 하나를 사용하여 컴포넌트에 액세스합니다.
findobj
함수 호출 —Figure
객체를 함수에 전달하여 모든 컴포넌트와 컴포넌트의 태그 목록을 표시합니다. 식별할 컴포넌트의 속성값을 지정하여 출력값을 추가로 필터링할 수 있습니다. 예를 들어, 텍스트"Click me"
로 누름 버튼의 태그를 식별하려면 다음 코드를 사용하십시오.f = myGUIDEApp; h = findobj(f,"Style","pushbutton","-and","String","Click me")
Figure의
CurrentObject
속성 사용 — 먼저, 실행 중인 앱에서 컴포넌트를 클릭합니다. 그런 다음, FigureCurrentObject
속성을 쿼리합니다. 이 속성은 Figure에서 마지막으로 클릭한 객체를 반환합니다.
마지막으로, 컴포넌트 객체에 액세스한 후 점 표기법을 사용하여 Tag
속성을 쿼리합니다.
tag = h.Tag
앱 동작 편집하기
GUIDE를 사용하여 만든 앱의 컴포넌트에는 코드 파일에 관련 콜백 함수가 있습니다. 이 함수는 사용자가 앱과 상호 작용할 때 앱의 동작을 제어합니다. 앱을 유지 관리하기 위해 이러한 콜백 함수를 계속 편집할 수 있습니다.
예를 들어, 다음 함수 정의는 GUIDE로 생성한, 태그 pushbutton1
이 있는 누름 버튼에 대한 콜백 함수의 예입니다. 사용자가 버튼을 누르면 실행되는 코드를 이 함수에 추가할 수 있습니다.
function pushbutton1_Callback(hObject,eventdata,handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) end
myui
인 경우 GUIDE는 Callback
속성을 다음 값으로 설정합니다.@(hObject,eventdata)myui('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
pushbutton1_Callback
에 대한 참조 역할을 하는 익명 함수입니다. 이 익명 함수에는 4개의 입력 인수가 있습니다. 첫 번째 인수는 콜백 함수의 이름입니다. 마지막 세 인수는 GUIDE로 생성된 앱의 모든 콜백이 받아야 하는 인수입니다. GUIDE에서 생성된 콜백 함수에서 이러한 인수는 다음과 같습니다.
hObject
— 콜백을 트리거하는 UI 컴포넌트입니다.eventdata
— 특정 마우스 동작 또는 키보드 동작에 대한 자세한 정보가 포함된 변수입니다.handles
— UI의 모든 객체가 포함된struct
입니다. UI는guidata
함수를 사용하여 이 구조체를 저장하고 유지합니다.
eventdata
인수는 특정 콜백 함수에 자세한 정보를 제공합니다. 예를 들어, 앱 사용자가 KeyPressFcn
콜백을 트리거하면 MATLAB은 앱 사용자가 누른 특정 키 또는 키 조합에 관한 정보를 제공합니다. eventdata
를 콜백 함수에서 사용할 수 없으면 MATLAB은 이 인수를 빈 배열로 전달합니다. 다음 표에는 eventdata
를 사용하는 콜백과 컴포넌트가 나열되어 있습니다.
콜백 속성 이름 | 컴포넌트 |
---|---|
WindowKeyPressFcn WindowKeyReleaseFcn WindowScrollWheelFcn | figure |
KeyPressFcn | figure , uicontrol , uitable |
KeyReleaseFcn | figure , uicontrol , uitable |
SelectionChangedFcn | uibuttongroup |
CellEditCallback CellSelectionCallback | uitable |
앱 레이아웃 편집하기
GUIDE를 사용하여 만든 모든 앱의 코드 파일에는
이라는 함수가 있습니다. 이 함수는 앱이 실행될 때 실행됩니다. 앱의 레이아웃을 편집하려면 이 함수에 코드를 추가하십시오.appname
_OpeningFcn
예를 들어, 앱에 pushbutton1
태그가 있는 누름 버튼이 있다고 가정해 보겠습니다. 버튼의 텍스트를 변경하고 버튼의 너비를 업데이트하기 위해서 코드 파일의 OpeningFcn
콜백에 아래 코드를 추가할 수 있습니다.
btn = handles.pushbutton1;
btn.String = "Push me";
btn.Position(3) = 30;
컴포넌트를 앱에 추가하거나 앱에서 삭제할 수도 있습니다. 컴포넌트를 추가하거나 삭제할 때마다 handles
구조체를 업데이트합니다. 그런 다음, 콜백 함수의 끝에서 guidata
함수를 사용하여 구조체를 저장하는 이 코드를 추가합니다.
guidata(hObject,handles)
예를 들어, 누름 버튼을 삭제하려면 이 코드를 OpeningFcn
콜백에 추가하십시오.
delete(handles.pushbutton1)
handles = rmfield(handles,"pushbutton1");
guidata(hObject,handles);
앱에 체크박스를 추가하려면 이 코드를 OpeningFcn
콜백에 추가하십시오.
cbx = uicontrol(handles.figure1, ... Style="checkbox",Position=[20 10 80 20],Tag="checkbox1"); handles.checkbox1 = cbx; guidata(hObject,handles);
콜백이 있는 컴포넌트를 추가하려면 앱에 동작을 통합하기 위해 파일에 추가 코드를 더해야 합니다. 예를 들어, 값이 변경될 때 텍스트를 표시하는 체크박스를 추가하려면 먼저 아래 코드를 OpeningFcn
콜백에 추가합니다(myui
는 사용자의 앱 파일 이름으로 변경해야 함). 이 코드는 체크박스를 생성하고, 체크박스에 고유한 태그를 할당하고, 콜백 함수 checkbox1_Callback
을 지정합니다.
cbx = uicontrol(handles.figure1, ... Style="checkbox",Position=[20 10 20 20],Tag="checkbox1", ... Callback=@(hObject,eventdata)myui("checkbox1_Callback",hObject,eventdata,guidata(hObject))); handles.checkbox1 = cbx; guidata(hObject,handles);
그런 다음, 코드 파일에 콜백 함수를 추가합니다. GUIDE 앱에서 MATLAB이 콜백에 전달하는 세 개의 입력 인수를 지정합니다.
% --- Executes on value changed in checkbox1. function checkbox1_Callback(hObject,eventdata,handles) % hObject handle to checkbox1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) disp("Value changed") end
GUIDE 앱을 MATLAB 파일로 내보내기
GUIDE 앱을 내보내면 GUIDE FIG 파일과 앱 코드 파일이 단일 MATLAB 프로그램 파일로 다시 생성되어 프로그래밍 방식 앱으로 변환됩니다. 대부분의 경우, 앱을 앱 디자이너로 마이그레이션하거나 GUIDE 앱 코드 파일을 편집하면 앱을 더 쉽게 장기적으로 유지 관리할 수 있습니다. 하지만 이 옵션은 단일 앱 파일로 작업하려는 경우에 유용합니다.
앱을 내보내려면 앱 디자이너에서 앱을 열고 툴스트립의 디자이너 탭으로 이동하십시오. 파일 섹션에서 열기 > GUIDE to App Designer Migration Tool 열기를 선택합니다. 대화 상자에서 단일 코드 파일로 내보내기 패널을 확장하고 앱과 연결된 FIG 파일을 선택한 다음 내보내기를 클릭합니다. MATLAB은 파일 이름에 _export
가 추가된 프로그램 파일을 만듭니다. 새 파일에는 원래 콜백 코드와 앱의 생성 및 레이아웃을 처리하는 자동 생성 함수가 포함되어 있습니다. 다음은 이렇게 추가된 함수의 한 예입니다.