Lec 13. MATLAB GUI Programming

50 %
50 %
Information about Lec 13. MATLAB GUI Programming
Education

Published on February 4, 2014

Author: mojool1984

Source: slideshare.net

MATLAB Programming MATLAB GUI Programming 김탁은 kmste2@kaist.ac.kr 1

MATLAB Programming GUI 만들기  New  Graphical User Interface 선택 2

MATLAB Programming UI Editor 3

MATLAB Programming GUI Application  데이터가 저장되어 있는 txt 파일을 선택하면, 해당 파일로부터 행렬 데이터를 읽고, bar 그래프로 그려주는 GUI Application을 제작  GUI Application 개발 스텝 • 1. 사용자 인터페이스를 어떤 식으로 만들지 구상 • 2. 사용자 인터페이스를 키보드나 마우스 등으로 조작했을 때, 해당 이벤트를 처리할 수 있는 코드 작성 4

MATLAB Programming 사용자 인터페이스 디자인 버튼 누르면 파일 선택 창 뜸 파일 읽어오기 파일 선택 후버튼 누르면 바 그래프 5

MATLAB Programming UI 컴포넌트 배치하기  원하는 디자인대로 UI 컴포넌트를 배치 6

MATLAB Programming UI 실행해보기 7

MATLAB Programming 버튼 속성 바꾸기 버튼 더블클릭하면 속성 창 (Inspector) 열림 8

MATLAB Programming 버튼 속성 바꾸기 버튼 이름과 폰트가 바뀜 9

MATLAB Programming 버튼 눌렀을 때 실행될 코드 작성하기  버튼 선택 후  마우스 오른쪽 버튼을 누르고  View Callbacks  ButtonDownFcn 을 선택 • pushbutton1_Callback 함수가 선택됨 • 이 곳에 버튼이 눌렀을 때 실행될 명령어 작성 10

MATLAB Programming 버튼 눌렀을 때 실행될 코드 작성하기  버튼이 눌러지면, 파일을 선택할 수 있는 UI 창이 떠야 함 • uigetfile 함수를 사용하면 파일 선택할 수 있는 UI 창을 띄울 수 있음 11

MATLAB Programming 버튼 눌렀을 때 실행될 코드 작성하기  버튼이 눌러지면, 파일을 선택할 수 있는 UI 창이 떠야 함 • uigetfile 함수를 사용하면 파일 선택할 수 있는 UI 창을 띄울 수 있음 12

MATLAB Programming 버튼 눌렀을 때 실행될 코드 작성하기 • uigetfile 창에서 “열기” 를 하면 filename과 path가 반환됨 • 파일 경로와 이름을 이용하여 데이터를 읽어옴 13

MATLAB Programming 버튼 눌렀을 때 실행될 코드 작성하기  데이터를 bar 그래프로 그리기 • axes 컴포넌트의 핸들 얻어오기 – handles.axes컴포넌트이름 14

MATLAB Programming 완성  실행  파일 열기  traffic.txt 선택 15

MATLAB Programming 기능 추가하기  라디오 버튼을 추가하여, Bar 그래프를 grouped bar 그래프로 그릴지, stacked bar 그래프로 그릴지 선택 Button Group 을 선택하여 그림 Radio Button 두개를 놓음 16

MATLAB Programming Button Group의 Label 변경하기 원하는 이름으로 적으면 됨 • eg) Grouped/Stacked 17

MATLAB Programming Button Group의 Label 변경하기  Button Group 컴포넌트를 더블 클릭하면 왼쪽과 같은 Inspector 창이 열림  Title 속성에 원하는 이름을 적으면 컴포넌트의 타이틀이 변경됨 원하는 이름으로 적으면 됨 • eg) Grouped/Stacked 18

MATLAB Programming 라디오 버튼 Label 변경하기  Button Group의 Label 변경하는 방법과 동일하게 Radio Button 컴포넌트의 타이틀도 변경 19

MATLAB Programming 라디오 버튼을 선택했을 때 실행할 코드 작성하기  두 라디오 버튼이 toggle 되어야 하므로, 마우스로 Button Group 컴포넌트를 선택한 후  마우스 오른쪽 버튼을 누르고  View Callbacks  SelectionChangeFcn 을 선택 • uipanel1_SelectionChangeFcn 함수가 선택됨 • 이 곳에 라디오 버튼이 토글 되었을 때 실행될 명령어 작성 20

MATLAB Programming 라디오 버튼을 선택했을 때 실행할 코드 작성하기 라디오 버튼을 선택했을 때, 바 그래프를 다시 그려야 하므로, 그래프 컴포넌트에 대한 핸들을 얻어옴 hObject에 어떠한 라디오 버튼을 눌렀는지 정보가 들어있음 각 라디오 버튼이 선택되었을 때의 액션을 지정함 21

MATLAB Programming 각 라디오 버튼의 명칭 확인하기  각 라디오 버튼의 명칭에 따라 handles.radiobutton_N 이 될 수 있음  확인 방법 • 라디오 버튼 선택 후 더블 클릭  Inspector 창에서 “Tag” 속성의 값 확인 22

MATLAB Programming 데이터 저장 변수를 global 로 선언하기  “파일 열기“ 버튼을 눌렀을 때 최초로 파일에서 데이터를 읽어 옴.  global data 를 선언하지 않으면, 파일로부터 읽어와 data 변수에 저장된 데이터는 function pushbutto1_Callback() 내에서만 사용되고 다른 함수에서는 사용할 수 없음  라디오 버튼의 액션을 제어하는 함수는 function uipanel1_SelectionChangeFcn() 함수 (즉, pushbutton1_Callback() 함수의 밖에 정의 된 함수) 이므로, data 변수에 접근할 수 없음.  global data 라고 선언하면, 다른 함수에서도 data 변수에 접근 가능 23

MATLAB Programming 데이터 저장 변수를 global 로 선언하기  데이터를 가져다 쓸 다른 함수에서도 global data 라고 선언을 해주어야 외부 함수에서 정의한 data 변수에 접근할 수 있음 24

MATLAB Programming Quiz  기능을 조금 더 확장해서, 바 그래프를 수직으로, 수평으로 보여주는 라디오 버튼을 추가해보자. 25

MATLAB Programming Quiz Sol.  각 함수별로 바뀌는 부분 26

MATLAB Programming Quiz Sol.  각 함수별로 바뀌는 부분 27

MATLAB Programming Quiz Sol.  각 함수별로 바뀌는 부분 28

Add a comment

Related presentations

Related pages

Lec 13. MATLAB GUI Programming - Education

Lec 13. MATLAB GUI Programming; Lec 13. MATLAB GUI Programming Dec 05, 2014 Education tak-eun-kim ...
Read more

Lec 13. MATLAB GUI Programming - Education

Lec 13. MATLAB GUI Programming; Download. of 28
Read more

MATLAB Lec 6 (Programming 3) part 1 | الماتلاب محاضرة 6 ...

MATLAB Lec 6 (Programming 3) ... 13. Osama Talaat 300 views. ... MATLAB Lec 7 (Introduction to GUI) part 1 ...
Read more

Lec 01. Introduction to MATLAB - Education

MATLAB Programming시작하기에 ... 13. MATLAB ProgrammingMATLAB 소프트웨어 구하기 circnts.kaist.ac.kr 로그인 ... Lec 12. MATLAB File I/O ...
Read more

Introduction to MATLAB - MSU

Introduction to MATLAB ... GUI Design and Programming . 3 Topics.. ... 13 Other MATLAB symbols >> prompt . . .
Read more

Lecture Notes | Computational Methods of Scientific ...

LEC # TOPICS LECTURE NOTES NOTES, ... Object-oriented programming. MATLAB applications, ... Lec #17. MATLAB: final class on GUI construction and use.
Read more

Introduction to Programming in MATLAB - MIT...

Introduction to Programming in MATLAB ... • MATLAB supports various types, ... 10 13 23 033 33 ⎡ ⎤⎡⎤⎡ ...
Read more