Main Content

GUIDE 옵션

참고

GUIDE 환경은 향후 릴리스에서 제거될 예정입니다. GUIDE가 제거된 후에도 기존 GUIDE 앱은 MATLAB®에서 계속 실행할 수 있지만 GUIDE에서 편집할 수는 없게 됩니다.

기존의 GUIDE 앱을 계속 편집하려면 GUIDE 마이그레이션 전략 항목에서 향후 MATLAB 릴리스와의 앱 호환성을 유지하는 방법에 대한 내용을 참고하십시오. 대화형 방식으로 새 앱을 만들려면 앱 디자이너를 사용하여 앱 개발하기 항목을 대신 참조하십시오.

GUI 옵션 대화 상자

> GUI 옵션을 선택하여 GUIDE 레이아웃 편집기에서 대화 상자에 액세스합니다. 선택한 옵션은 다음에 UI를 저장할 때 적용됩니다.

크기 조정 동작

사용자가 창 크기를 조정할 수 있는지 여부와 MATLAB의 크기 조정 처리 방식을 제어할 수 있습니다. GUIDE에서는 다음 3가지 옵션을 제공합니다.

  • 크기 조정할 수 없음 — 사용자가 창 크기를 변경할 수 없습니다(디폴트 값).

  • 비례 — 새 Figure 창 크기에 비례하게 UI 컴포넌트의 크기가 자동으로 조정됩니다.

  • 기타(SizeChangedFcn 사용) — 사용자가 Figure 창 크기를 조정하면 특정한 방식으로 동작하도록 UI를 프로그래밍합니다.

처음 2개 옵션은 Figure 속성과 컴포넌트 속성을 적절하게 설정하기 때문에 별도의 다른 동작이 필요하지 않습니다. 기타(SizeChangedFcn 사용)의 경우에는 새 Figure 크기에 따라 컴포넌트의 크기와 위치를 다시 계산하는 콜백 루틴을 작성해야 합니다.

명령줄 접근성

GUIDE의 명령줄 접근성 옵션을 사용하면 명령줄 또는 코드 파일에서 Figure 창에 접근하는 것을 제한할 수 있습니다.

Figure 핸들을 명시적으로 지정하지 않으면 plot과 같은 여러 명령에 의해 현재 Figure(루트의 CurrentFigure 속성에 의해 지정되고 gcf 명령에서 반환되는 Figure)가 변경됩니다. 현재 Figure는 주로 가장 최근에 만들어졌거나, 가장 최근에 플로팅이 이루어졌거나, 가장 최근에 마우스로 클릭된 Figure입니다. 프로그래밍 방식으로 Figure h(여기에서 h는 Figure 핸들임)를 현재 Figure로 지정할 수 있는 방법에는 4가지가 있습니다.

  1. set(groot,'CurrentFigure',h) — Figure h를 현재 Figure로 지정하지만, 다른 Figure와 같이 표시되고 있는 상태나 순서는 바뀌지 않습니다.

  2. figure(h) — Figure h를 현재 Figure로 지정하고 다른 모든 Figure 위에 표시합니다.

  3. axes(h) — 기존 좌표축 h를 현재 좌표축으로 지정하고 이 좌표축이 포함된 Figure를 다른 모든 Figure 위에 표시합니다.

  4. plot(h,...) 또는 좌표축을 첫 번째 인수로 받는 모든 플로팅 함수도 기존 좌표축 h를 현재 좌표축으로 지정하고 이 좌표축이 포함된 Figure를 다른 모든 Figure 위에 표시합니다.

gcf 함수는 현재 Figure의 핸들을 반환합니다.

h = gcf

GUIDE에서 만든 UI의 경우, 사용자가 실수로 명령줄, 스크립트 또는 함수(예: plot)에서 명령을 실행하여 UI의 모양이나 내용을 변경하지 않도록 명령줄 접근성 옵션을 설정하십시오. 다음 표에서는 명령줄 접근성의 옵션 4개를 간략하게 설명합니다.

옵션

설명

콜백(GUI는 콜백 내에서만 현재 Figure가 됨)

콜백 내에서만 UI에 접근할 수 있습니다. 명령줄이나 스크립트에서는 UI에 접근할 수 없습니다. 이는 디폴트 값입니다.

꺼짐(GUI는 현재 Figure가 될 수 없음)

핸들 없이 콜백, 명령줄 또는 스크립트에서 UI에 접근할 수 없습니다.

켜짐(명령줄 접근을 통해 GUI가 현재 Figure가 될 수 있음)

콜백, 명령줄, 스크립트에서 UI에 접근할 수 있습니다.

기타(속성 인스펙터의 설정 사용)

속성 인스펙터에서 HandleVisibility 속성과 IntegerHandle 속성을 설정하여 접근성을 제어합니다.

FIG 파일과 MATLAB 파일 생성하기

GUIDE에서 FIG 파일과 UI 코드 파일을 모두 만들려면 GUI 옵션 대화 상자에서 FIG 파일 및 MATLAB 파일 생성(디폴트 값)을 선택하십시오. 이 옵션을 선택하면 UI 코드 구성을 위해 다음 중 어떤 항목이든 선택할 수 있습니다.

두 파일에 대한 자세한 내용은 Files Generated by GUIDE 항목을 참조하십시오.

콜백 함수 프로토타입 생성

GUI 옵션 대화 상자에서 콜백 함수 프로토타입 생성을 선택하면 가장 일반적으로 사용되는 콜백의 템플릿이 대부분의 컴포넌트의 코드 파일에 추가됩니다. 사용자가 이 템플릿에 코드를 삽입해야 합니다.

또한 메뉴 편집기를 사용하여 UI에 메뉴를 추가할 때, 레이아웃 편집기에서 마우스 오른쪽 버튼을 클릭하여 상황별 메뉴에서 콜백 루틴을 편집할 때마다 콜백이 추가됩니다.

콜백에 대한 일반적인 정보는 GUIDE에서 콜백 작성하기 항목을 참조하십시오.

참고

이 옵션을 사용할 수 있으려면 먼저 FIG 파일 및 MATLAB 파일 생성 옵션을 선택해야 합니다.

GUI에서는 한 인스턴스만 실행할 수 있음(싱글톤)

이 옵션을 사용하여 Figure 창의 다음 두 동작 중 하나를 선택할 수 있습니다.

  • MATLAB에서 UI 인스턴스를 한 번에 하나씩만 표시하도록 허용합니다.

  • MATLAB에서 UI 인스턴스를 여러 개 표시하도록 허용합니다.

하나의 인스턴스만 허용할 경우, 프로그램을 실행하는 명령이 실행될 때마다 MATLAB은 기존 Figure를 재사용합니다. UI 창이 이미 존재하는 경우, MATLAB은 새 Figure를 만드는 대신 이 창을 전경으로 가져옵니다.

이 옵션 선택을 취소할 경우, 사용자가 프로그램을 실행하는 명령을 실행할 때마다 MATLAB은 새 Figure를 만듭니다.

UI 인스턴스가 하나만 존재하도록 허용한 경우에도 명령줄에서 이 인스턴스를 호출할 때마다 초기화가 발생할 수 있습니다. 예를 들어, OpeningFcn의 코드는 GUIDE 프로그램이 실행될 때마다 실행됩니다. 코드가 실행되지 않도록 하려면 이를 위한 단계를 수행해야 합니다. handles 구조체에 플래그를 추가하는 것도 이러한 동작을 제어하는 방법 중 하나입니다. OpeningFcn에서 이 플래그가 아직 없으면 초기화 코드를 실행하고, 플래그가 있으면 해당 코드를 건너뛸 수 있습니다.

참고

이 옵션을 사용할 수 있으려면 먼저 FIG 파일 및 MATLAB 파일 생성 옵션을 선택해야 합니다.

배경에 시스템 색 체계 사용

UI 컴포넌트에 사용되는 디폴트 색은 시스템에 따라 다릅니다. 이 옵션을 사용하면 Figure 배경색을 디폴트 컴포넌트 배경색과 동일하게 지정할 수 있습니다.

Figure 배경과 컴포넌트 색이 일치하도록 하려면 GUI 옵션 대화 상자에서 배경에 시스템 색 체계 사용을 선택하십시오.

참고

이 옵션을 사용할 수 있으려면 먼저 FIG 파일 및 MATLAB 파일 생성 옵션을 선택해야 합니다.

FIG 파일만 생성

FIG 파일만 생성 옵션을 사용하면 제한된 편집이 가능한 Figure와 UI를 열 수 있습니다. 모든 Figure가 될 수 있으며 UI일 필요는 없습니다. UI는 GUIDE를 사용하여 생성한 것이 아니어도 됩니다. 이 모드는 제한된 편집 기능을 제공하며 MATLAB 버전 5.3 이하에서 생성된 UI에 유용할 수 있습니다. 자세한 내용은 guide 함수를 참조하십시오.

다음 중 하나를 수행할 경우 GUIDE는 FIG 파일만 생성을 디폴트 값으로 선택합니다.

  • 하나 이상의 Figure 객체를 인수로 제공하여 명령줄에서 GUIDE를 시작합니다.

    guide(f)

    이 경우, 해당 이름을 가진 코드 파일이 동일한 폴더에 있어도 GUIDE는 FIG 파일만 생성을 선택합니다.

  • 명령줄에서 GUIDE를 시작하고, 동일한 폴더에 같은 이름을 가진 코드 파일이 없는 FIG 파일의 이름을 지정합니다.

    guide('myfig.fig')
  • GUIDE의 기존 GUI 열기 탭에서 동일한 폴더에 같은 이름을 가진 코드 파일이 없는 FIG 파일을 엽니다.

FIG 파일만 생성을 선택한 상태에서 Figure 또는 UI를 저장하면 GUIDE는 FIG 파일만 저장합니다. 코드 파일은 적절하게 직접 업데이트해야 합니다.

GUIDE가 대신 UI 코드 파일을 관리할 수 있도록 하려면 UI를 저장하기 전에 선택 항목을 FIG 파일 및 MATLAB 파일 생성으로 변경하십시오. 동일한 위치에 해당 코드 파일이 없는 경우, GUIDE가 코드 파일을 만듭니다. 원래 Figure 또는 UI와 이름이 같은 코드 파일이 동일한 폴더에 존재하는 경우, GUIDE는 코드 파일을 덮어씁니다. 기존 파일을 덮어쓰지 않도록 하려면 파일 메뉴에서 다른 이름으로 저장을 사용하여 UI를 저장하십시오. 두 파일의 파일 이름을 추가로 선택합니다. GUIDE가 새 코드 파일의 변수 이름을 적절하게 업데이트합니다.

코드가 없는 UI에 대한 콜백

UI FIG 파일과 연결된 코드 파일이 없는 경우에도 UI 컴포넌트가 사용되면 동작을 수행하도록 하는 콜백을 제공할 수 있습니다. 속성 인스펙터에서 문자형 벡터, 내장 함수 또는 MATLAB 코드 파일 이름 형식으로 콜백을 입력할 수 있습니다. 프로그램이 실행되면 콜백도 실행됩니다(가능한 경우). 콜백이 파일 이름이면 콜백에 해당 함수에 대한 인수가 포함될 수 있습니다. 예를 들어, 누름 버튼의 Callback 속성을 sqrt(2)로 설정하면 표현식 결과가 명령 창에 표시됩니다.

ans =
    1.4142
콜백이 실행하는 모든 파일은 현재 폴더 또는 MATLAB 경로에 있어야 합니다. 콜백 작동 방식에 대한 자세한 내용은 GUIDE에서 콜백 작성하기 항목을 참조하십시오.

관련 항목