버튼 구성 요소는 크기를 조절할 수 있는 사각형 버튼으로, 사용자가 마우스나 스페이스바로 눌러 응용 프로그램에서 액션을 시작할 수 있습니다. Button에는 사용자 정의 아이콘을 추가할 수 있습니다. Button의 비헤이비어를 누름에서 전환으로 변경할 수도 있습니다. 전환 Button은 클릭하면 눌린 상태로 있다가 다시 클릭하면 원래 상태로 되돌아옵니다.
Button은 많은 양식 및 웹 응용 프로그램에서 기본이 되는 요소입니다. 사용자가 이벤트를 시작하도록 하려는 경우 버튼을 사용할 수 있습니다. 예를 들어, 대부분의 양식에는 [전송] 버튼이 있고, 프리젠테이션에는 [이전] 및 [다음] 버튼을 추가할 수 있습니다.
Button 구성 요소와 사용자의 상호 작용
응용 프로그램에서 버튼을 활성화하거나 비활성화할 수 있습니다. 버튼이 비활성화된 상태에서는 마우스 또는 키보드 입력을 수신하지 못합니다. 활성화된 버튼은 클릭하거나 Tab 키를 눌러 이동하면 포커스를 받게 됩니다. Button 인스턴스가 포커스를 받으면 다음 키를 사용하여 제어할 수 있습니다.
키
|
설명
|
Shift+Tab
|
이전 객체로 포커스를 이동합니다.
|
스페이스바
|
버튼을 누르거나 놓고
click
이벤트를 트리거합니다.
|
탭
|
다음 객체로 포커스를 이동합니다.
|
Enter/Return
|
버튼이 FocusManager의 기본 Button으로 설정되어 있는 경우 다음 객체로 포커스를 이동합니다.
|
포커스 제어에 대한 자세한 내용은 Flash Professional용
ActionScript 3.0 참조 설명서
의 IFocusManager 인터페이스 및 FocusManager 클래스와
FocusManager를 사용한 작업
을 참조하십시오.
각 Button 인스턴스의 실시간 미리 보기에는 제작하는 동안 속성 관리자나 [구성 요소 관리자]에서 변경한 매개 변수가 반영됩니다.
참고:
버튼보다 큰 아이콘은 버튼의 테두리를 넘어갑니다.
버튼을 응용 프로그램의 기본 누름 버튼(사용자가 Enter 키를 누를 때 click 이벤트를 받는 버튼)으로 지정하려면
FocusManager.defaultButton
을 설정합니다. 예를 들어, 다음 코드에서는
submitButton
이라는 Button 인스턴스를 기본 버튼으로 설정합니다.
FocusManager.defaultButton = submitButton;
응용 프로그램에 Button 구성 요소를 추가할 때 다음 ActionScript 코드를 추가하여 화면 판독기에서 해당 구성 요소에 액세스할 수 있게 만들 수 있습니다.
import fl.accessibility.ButtonAccImpl;
ButtonAccImpl.enableAccessibility();
구성 요소에 대한 액세스 가능성은 만드는 인스턴스 수에 관계없이 한 번만 활성화하면 됩니다.
Button 구성 요소 매개 변수
속성 관리자([윈도우] > [속성] > [속성])나 [구성 요소 관리자]([윈도우] > [구성 요소 관리자])에서 각 Button 인스턴스에 대해
emphasized
,
label
,
labelPlacement
,
selected
,
toggle
등의 제작 매개 변수를 설정할 수 있습니다. 이러한 매개 변수에는 각각 같은 이름의 해당 ActionScript 속성이 있습니다. 이러한 매개 변수에 값을 지정하면 그에 따라 응용 프로그램에서 해당 속성의 초기 상태가 설정됩니다. 하지만 ActionScript에서 속성을 설정하면 매개 변수에 지정한 값이 재정의됩니다. 이러한 매개 변수의 가능한 값에 대한 자세한 내용은
ActionScript 3.0 Reference
for Flash Professional
에서 Button 클래스를 참조하십시오.
Button 구성 요소를 사용하여 응용 프로그램 만들기
다음 절차에서는 응용 프로그램을 제작하는 동안 Button 구성 요소를 추가하는 방법을 설명합니다. 이 예제에서는 Button을 클릭하면 ColorPicker 구성 요소의 상태가 변경됩니다.
-
새 Flash(ActionScript 3.0) 문서를 만듭니다.
-
[구성 요소] 패널의 Button 구성 요소를 스테이지로 드래그하고 속성 관리자에서 다음 값을 입력합니다.
-
ColorPicker를 스테이지에 추가하고 인스턴스 이름을
aCp
로 지정합니다.
-
[액션] 패널을 열고 기본 타임라인에서 프레임 1을 선택한 후 다음 ActionScript 코드를 입력합니다.
aCp.visible = false;
aButton.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
switch(event.currentTarget.label) {
case "Show":
aCp.visible = true;
aButton.label = "Disable";
break;
case "Disable":
aCp.enabled = false;
aButton.label = "Enable";
break;
case "Enable":
aCp.enabled = true;
aButton.label = "Hide";
break;
case "Hide":
aCp.visible = false;
aButton.label = "Show";
break;
}
}
두 번째 코드 행은
clickHandler()
함수를
MouseEvent.CLICK
이벤트의 이벤트 핸들러 함수로 등록합니다. 사용자가 Button을 클릭하면 이벤트가 발생하고
clickHandler()
함수가 Button 값에 따라 다음 액션 중 하나를 수행합니다.
-
Show는 ColorPicker를 보이게 하고 Button 레이블을 Disable로 변경합니다.
-
Disable은 ColorPicker를 비활성화하고 Button 레이블을 Enable로 변경합니다.
-
Enable은 ColorPicker를 활성화하고 Button 레이블을 Hide로 변경합니다.
-
Hide는 ColorPicker를 보이지 않게 하고 Button 레이블을 Show로 변경합니다.
-
[컨트롤] > [무비 테스트]를 선택하여 응용 프로그램을 실행합니다.
Button 구성 요소를 사용하여 응용 프로그램 만들기
다음 절차에서는 ActionScript를 사용하여 전환 Button을 만들고 사용자가 Button을 클릭할 때 [출력] 패널에 이벤트 유형을 표시합니다. 이 예제에서는 클래스 생성자를 호출하여 Button 인스턴스를 만들고
addChild()
메서드를 호출하여 스테이지에 추가합니다.
-
새 Flash(ActionScript 3.0) 문서를 만듭니다.
-
[구성 요소] 패널의 Button 구성 요소를 현재 문서의 [라이브러리] 패널로 드래그합니다.
구성 요소가 라이브러리에 추가되고 응용 프로그램에는 표시되지 않습니다.
-
[액션] 패널을 열고 기본 타임라인에서 프레임 1을 선택한 후 다음 코드를 입력하여 Button 인스턴스를 만듭니다.
import fl.controls.Button;
var aButton:Button = new Button();
addChild(aButton);
aButton.label = "Click me";
aButton.toggle =true;
aButton.move(50, 50);
move()
메서드는 스테이지의 50(x 좌표), 50(y 좌표) 위치에 버튼을 배치합니다.
-
이제, 다음 ActionScript를 추가하여 이벤트 리스너 및 이벤트 핸들러 함수를 만듭니다.
aButton.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
trace("Event type: " + event.type);
}
-
[컨트롤] > [무비 테스트]를 선택합니다.
버튼을 클릭하면 출력 패널에 "Event type: click"이라는 메시지가 표시됩니다.
|
|
|