uitextarea
텍스트 영역 컴포넌트 만들기
설명
는 새 Figure 창에 텍스트 영역을 만들고 txa
= uitextareaTextArea
객체를 반환합니다. MATLAB®은 uifigure
함수를 호출하여 Figure를 만듭니다.
는 하나 이상의 이름-값 인수를 사용하여 txa
= uitextarea(___,Name,Value
)TextArea
속성을 지정합니다. 예를 들어, uitextarea("Value","Comments")
는 Comments
라는 텍스트를 표시하는 텍스트 영역을 생성합니다. 위에 열거된 구문에 나와 있는 입력 인수를 조합하여 이 옵션과 함께 사용하십시오.
예제
텍스트 영역 만들기
자리 표시자 텍스트가 있는 텍스트 영역 만들기
UI Figure 안에 텍스트 영역을 만듭니다. 예상되는 입력값을 설명하는 자리 표시자 텍스트를 지정합니다. 자리 표시자 텍스트는 텍스트 영역이 비어 있는 경우에만 표시됩니다.
fig = uifigure; txa = uitextarea(fig,"Placeholder","Enter feedback");
텍스트 영역 속성 설정 및 액세스하기
UI Figure 안에 채워진 텍스트 영역을 만듭니다.
fig = uifigure; txa = uitextarea(fig, ... "Value",["First Name Last Name"; "Address 1"; ... "Address 2"; "City, State"; "Postal Code"]);
텍스트 영역에는 앱 사용자가 우편 번호를 볼 수 있도록 스크롤 막대가 포함되어 있습니다.
Position
속성의 세 번째 값과 네 번째 값을 쿼리하여 텍스트 영역의 현재 너비와 높이를 결정합니다.
size = txa.Position(3:4)
size = 1×2
150 60
스크롤 막대를 사용하지 않고 모든 내용을 볼 수 있도록 텍스트 영역의 크기를 늘립니다.
txa.Position(3:4) = [155 80];
프로그래밍 방식으로 텍스트 영역 스크롤하기
프로그래밍 방식으로 텍스트 영역의 아래쪽으로 스크롤합니다.
텍스트 영역을 만듭니다. 텍스트 영역의 크기와 긴 텍스트를 지정합니다.
fig = uifigure;
txa = uitextarea(fig);
txa.Position = [100 100 80 80];
txa.Value = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.";
텍스트 영역의 아래쪽으로 스크롤합니다.
scroll(txa,"bottom")
변경된 텍스트 영역 값에 대한 코드 반응
앱 사용자가 텍스트 영역에 텍스트를 입력하면 버튼이 활성화되는 앱을 만듭니다.
textAreaApp.m
이라는 파일에 다음과 같이 앱을 구현하는 함수를 작성합니다.
UI Figure와 그리드 레이아웃 관리자를 만들어 앱의 레이아웃을 설정합니다.
그리드 레이아웃 관리자에서 레이블, 텍스트 영역 및 버튼을 만듭니다.
텍스트 영역에 텍스트가 있을 때 버튼을 활성화하는
textEntered
라는 콜백 함수를 작성한 다음, 이 함수를 텍스트 영역의ValueChangedFcn
콜백 속성에 할당합니다. 콜백에 대한 자세한 내용은 프로그래밍 방식으로 만든 앱에 대한 콜백 만들기 항목을 참조하십시오.
function textAreaApp fig = uifigure; g = uigridlayout(fig,[3 3]); g.RowHeight = {'fit','fit','fit'}; g.ColumnWidth = {'1x','fit','1x'}; lbl = uilabel(g,"Text","Enter Comments:"); lbl.Layout.Row = 1; lbl.Layout.Column = 2; txa = uitextarea(g); txa.Layout.Row = 2; txa.Layout.Column = 2; btn = uibutton(g,"Text","Submit","Enable","off"); btn.Layout.Row = 3; btn.Layout.Column = 2; txa.ValueChangedFcn = @(src,event) textEntered(src,event,btn); end function textEntered(src,event,btn) val = src.Value; btn.Enable = "off"; % Check each element of text area cell array for text for k = 1:length(val) if ~isempty(val{k}) btn.Enable = "on"; break end end end
textAreaApp
함수를 실행합니다. 텍스트 영역에 텍스트를 입력한 다음 텍스트 영역 외부를 클릭하여 Submit 버튼을 활성화합니다.
입력 인수
parent
— 부모 컨테이너
Figure
객체 (디폴트 값) | Tab
객체 | Panel
객체 | ButtonGroup
객체 | GridLayout
객체
부모 컨테이너로, uifigure
함수를 사용하여 만든 Figure
객체나 그 자식 컨테이너인 Tab
, Panel
, ButtonGroup
, GridLayout
중 하나로 지정됩니다. 부모 컨테이너를 지정하지 않을 경우 MATLAB은 uifigure
함수를 호출하여 부모 컨테이너 역할을 하는 새 Figure
객체를 만듭니다.
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
예: uitextarea(Editable="off")
는 앱 사용자가 텍스트 영역의 텍스트를 변경할 수 없도록 지정합니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name
을 따옴표로 묶으십시오.
예: uitextarea("Editable","off")
는 앱 사용자가 텍스트 영역의 텍스트를 변경할 수 없도록 지정합니다.
참고
여기에 나와 있는 속성은 사용 가능한 속성의 일부에 불과합니다. 전체 목록을 보려면 TextArea 속성 항목을 참조하십시오.
Value
— 값
{''}
(디폴트 값) | 문자형 벡터 | string형 스칼라 | 문자형 벡터로 구성된 셀형 배열 | string형 배열 | 1차원 categorical형 배열
값으로, 문자형 벡터, string형 스칼라, 문자형 벡터로 구성된 셀형 배열, string형 배열 또는 1차원 categorical형 배열로 지정됩니다. 여러 줄로 된 텍스트를 표시하려면 Value
를 배열로 지정하십시오. 배열의 각 요소는 개별 텍스트 라인을 나타냅니다.
txt = ["Line 1"; "Line 2"; "Line 3"; "Line 4"]; textarea = uitextarea("Value",txt);
이 속성을 categorical형 배열로 지정할 경우 MATLAB은 전체 범주 집합이 아닌 배열에 있는 값을 사용합니다.
텍스트가 텍스트 영역의 너비에 맞지 않으면 MATLAB은 텍스트를 줄 바꿈합니다.
텍스트 영역에 표시할 행이 너무 많으면 MATLAB은 스크롤 막대를 추가합니다.
예: ["Joseph Welford"; "Mary Reilly"; "Roberta Silberlicht"]
ValueChangedFcn
— 값 변경 콜백
''
(디폴트 값) | 함수 핸들 | 셀형 배열 | 문자형 벡터
값 변경 콜백으로, 다음 값 중 하나로 지정됩니다.
함수 핸들.
첫 번째 요소가 함수 핸들인 셀형 배열. 이 셀형 배열의 그 다음 요소들은 콜백 함수로 전달할 인수입니다.
유효한 MATLAB 표현식이 포함된 문자형 벡터(권장되지 않음). MATLAB은 이 표현식을 기본 작업 공간에서 실행합니다.
이 콜백은 사용자가 텍스트를 변경하고 Tab 키를 누르거나 텍스트 영역 바깥쪽을 클릭할 때 실행됩니다. Value
속성이 프로그래밍 방식으로 변경되는 경우에는 실행되지 않습니다.
이 콜백 함수는 사용자와 텍스트 영역의 상호 작용에 대한 특정 정보에 액세스할 수 있습니다. MATLAB은 이 정보를 콜백 함수에 대한 두 번째 인수로서 ValueChangedData
객체에 전달합니다. 앱 디자이너에서는 이 인수를 event
라고 부릅니다. 점 표기법을 사용하여 객체 속성을 쿼리할 수 있습니다. 예를 들어, event.PreviousValue
는 텍스트 영역의 이전 값을 반환합니다. ValueChangedData
객체는 문자형 벡터로 지정된 콜백 함수에 사용할 수 없습니다.
다음 표에는 ValueChangedData
객체의 속성 목록이 나열되어 있습니다.
속성 | 값 |
---|---|
Value | 앱 사용자의 가장 최근 상호 작용 직후의 텍스트 영역 값 |
PreviousValue | 앱 사용자의 가장 최근 상호 작용 직전의 텍스트 영역 값 |
Source | 콜백을 실행하는 컴포넌트 |
EventName | 'ValueChanged' |
콜백을 작성하는 방법에 대한 자세한 내용은 앱 디자이너에서 콜백 사용하기 항목을 참조하십시오.
ValueChangingFcn
— 값 변경 콜백
''
(디폴트 값) | 함수 핸들 | 셀형 배열 | 문자형 벡터
값 변경 콜백으로, 다음 값 중 하나로 지정됩니다.
함수 핸들.
첫 번째 요소가 함수 핸들인 셀형 배열. 이 셀형 배열의 그 다음 요소들은 콜백 함수로 전달할 인수입니다.
유효한 MATLAB 표현식이 포함된 문자형 벡터(권장되지 않음). MATLAB은 이 표현식을 기본 작업 공간에서 실행합니다.
이 콜백은 다음과 같이 실행됩니다.
사용자가 텍스트 영역에 입력할 때 콜백이 반복적으로 실행됩니다.
사용자가 Tab 키를 누르거나 텍스트 영역 바깥쪽을 클릭할 때 콜백이 실행됩니다.
텍스트 영역 값이 프로그래밍 방식으로 변경되는 경우에는 콜백이 실행되지 않습니다.
이 콜백 함수는 사용자와 텍스트 영역의 상호 작용에 대한 특정 정보에 액세스할 수 있습니다. MATLAB은 이 정보를 콜백 함수에 대한 두 번째 인수로서 ValueChangingData
객체에 전달합니다. 앱 디자이너에서는 이 인수를 event
라고 부릅니다. 점 표기법을 사용하여 객체 속성을 쿼리할 수 있습니다. 예를 들어, event.Value
는 콜백의 실행을 트리거한 텍스트 영역의 값입니다. ValueChangingData
객체는 문자형 벡터로 지정된 콜백 함수에 사용할 수 없습니다.
ValueChangingData
객체의 속성은 다음과 같습니다.
속성 | 설명 |
---|---|
Value | 콜백의 실행을 트리거한 값 |
Source | 콜백을 실행하는 컴포넌트 |
EventName | 'ValueChanging' |
TextArea
객체의 Value
속성은 사용자가 Tab 키를 누르거나 텍스트 영역 바깥쪽을 클릭할 때까지 업데이트되지 않습니다. 그러나 ValueChangingData
객체의 Value
속성을 쿼리하여 사용자가 아직 입력하는 동안에도 텍스트를 가져올 수 있습니다.
참고
TextArea
객체의 Value
속성을 자체 ValueChangingFcn
콜백에서 업데이트하지 마십시오. 예상치 않은 동작이 발생할 수 있습니다. 사용자 입력에 대한 응답으로 텍스트 영역 값을 업데이트하려면 ValueChangedFcn
콜백을 대신 사용하십시오.
콜백을 작성하는 방법에 대한 자세한 내용은 앱 디자이너에서 콜백 사용하기 항목을 참조하십시오.
Position
— 텍스트 영역의 위치와 크기
[100 100 150 60]
(디폴트 값) | [left bottom width height]
부모를 기준으로 한 텍스트 영역의 위치와 크기로, 벡터 [left bottom width height]
로 지정됩니다. 다음 표에서는 벡터의 각 요소를 설명합니다.
요소 | 설명 |
---|---|
left | 부모 컨테이너의 왼쪽 내부 가장자리와 텍스트 영역의 왼쪽 외부 가장자리 사이의 거리 |
bottom | 부모 컨테이너의 내부 하단 가장자리와 텍스트 영역의 외부 하단 가장자리 사이의 거리 |
width | 텍스트 영역의 오른쪽과 왼쪽 외부 가장자리 사이의 거리 |
height | 텍스트 영역의 상단과 하단 외부 가장자리 사이의 거리 |
모든 측정값은 픽셀 단위입니다.
Position
값은 부모 컨테이너의 그리기 가능 영역을 기준으로 합니다. 그리기 가능 영역은 컨테이너의 경계 내부 영역이며 장식(예: 메뉴 모음, 제목)이 차지하는 영역은 포함되지 않습니다.
예: [100 100 100 90]
버전 내역
R2016a에 개발됨R2021b: 사용자가 입력하는 동안 응답하도록 프로그래밍
ValueChangingFcn
콜백을 만들어 사용자가 텍스트 영역에 입력하는 동안에도 응답하도록 앱을 프로그래밍합니다. 콜백 함수는 사용자가 입력하는 동안 반복적으로 실행됩니다.
R2021a: 자리 표시자 텍스트 지정
Placeholder
속성을 사용하여 예상되는 텍스트 영역 입력값을 설명하는 짧은 힌트를 제공합니다.
자세한 내용은 TextArea 속성 항목을 참조하십시오.
R2020b: 텍스트 줄 바꿈 설정/해제
WordWrap
속성을 사용하여 텍스트 줄 바꿈을 설정/해제합니다. WordWrap
속성이 'on'
(디폴트 값)이면 UI 컴포넌트는 각 라인이 컴포넌트 내에서 가로 길이에 맞도록 텍스트를 새로운 줄로 나눕니다. 속성이 'off'
로 설정된 경우 텍스트는 줄 바꿈되지 않습니다.
자세한 내용은 TextArea 속성 항목을 참조하십시오.
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)