JavaTM Platform
Standard Ed. 6

javax.swing
인터페이스 Action

모든 슈퍼 인터페이스:
ActionListener , EventListener
기존의 구현 클래스의 일람:
AbstractAction , BasicDesktopPaneUI.CloseAction , BasicDesktopPaneUI.MaximizeAction , BasicDesktopPaneUI.MinimizeAction , BasicDesktopPaneUI.NavigateAction , BasicDesktopPaneUI.OpenAction , BasicFileChooserUI.ApproveSelectionAction , BasicFileChooserUI.CancelSelectionAction , BasicFileChooserUI.ChangeToParentDirectoryAction , BasicFileChooserUI.GoHomeAction , BasicFileChooserUI.NewFolderAction , BasicFileChooserUI.UpdateAction , BasicInternalFrameTitlePane.CloseAction , BasicInternalFrameTitlePane.IconifyAction , BasicInternalFrameTitlePane.MaximizeAction , BasicInternalFrameTitlePane.MoveAction , BasicInternalFrameTitlePane.RestoreAction , BasicInternalFrameTitlePane.SizeAction , BasicSliderUI.ActionScroller , BasicTreeUI.TreeCancelEditingAction , BasicTreeUI.TreeHomeAction , BasicTreeUI.TreeIncrementAction , BasicTreeUI.TreePageAction , BasicTreeUI.TreeToggleAction , BasicTreeUI.TreeTraverseAction , DefaultEditorKit.BeepAction , DefaultEditorKit.CopyAction , DefaultEditorKit.CutAction , DefaultEditorKit.DefaultKeyTypedAction , DefaultEditorKit.InsertBreakAction , DefaultEditorKit.InsertContentAction , DefaultEditorKit.InsertTabAction , DefaultEditorKit.PasteAction , HTMLEditorKit.HTMLTextAction , HTMLEditorKit.InsertHTMLTextAction , MetalFileChooserUI.DirectoryComboBoxAction , StyledEditorKit.AlignmentAction , StyledEditorKit.BoldAction , StyledEditorKit.FontFamilyAction , StyledEditorKit.FontSizeAction , StyledEditorKit.ForegroundAction , StyledEditorKit.ItalicAction , StyledEditorKit.StyledTextAction , StyledEditorKit.UnderlineAction , TextAction


public interface Action
extends ActionListener

Action 인터페이스는, 같은 기능이 복수의 컨트롤에 의해 액세스 되는 경우에,ActionListener 인터페이스에 대한 편리한 확장 기능을 제공합니다.

ActionListener 인터페이스로 정의되는 actionPerformed 메소드에 가세해 이 인터페이스를 사용하면(자), 어플리케이션에서는 다음 일을 1 개소에서 정의할 수 있습니다.

이 인터페이스는 기존의 클래스에 추가하거나 어댑터의 생성 (일반적으로은 AbstractAction 의 서브 클래스화)에 사용하거나 할 수가 있습니다. 그리고,Action 객체가 복수의 Action 처리 컨테이너에 추가되어Action 의 기능을 가진 컴퍼넌트에 접속됩니다. 이것에 의해,Action 객체의 setEnabled 메소드를 호출해, GUI 컨트롤을 한 번에 기동 또는 종료할 수 있습니다.

Action 의 구현은, 기억 영역의 점으로써 일반적으로의 ActionListener 보다 불가가 커지는 것이 많기 때문에, 기능의 중앙 제어나 프로퍼티 변경의 통지라고 하는 이점을 제공할 수 없습니다. 이 때문에, 이러한 기능을 이용할 필요가 있는 경우에게만 Action 를 사용하도록(듯이) 해, 그 이외에서는 단순한 ActionListener 를 사용하도록 해 주세요.

Action 를 지원하는 Swing 컴퍼넌트

많은 Swing 컴퍼넌트는,Action 프로퍼티을 가지고 있습니다. 컴퍼넌트에 Action 가 설정되면(자), 다음 일을 합니다.

다음의 겉(표)에서는,Action 를 지원하는 Swing 컴퍼넌트로 사용되는 프로퍼티에 대해 설명합니다. 표중의 buttonAbstractButton 서브 클래스를 나타내고 있습니다. 이것에는,JButton 뿐만이 아니라,JMenuItem 등의 클래스도 포함되어 있습니다. 특히 기술이 없는 한,Action 내에 프로퍼티치 null 가 있는 경우 (또는 Actionnull 인 경우), 버튼의 대응하는 프로퍼티이 null 로 설정됩니다.

컴퍼넌트의 프로퍼티 컴퍼넌트 액션 키
enabled 모두 isEnabled 메소드  
toolTipText 모두 SHORT_DESCRIPTION  
actionCommand 모두 ACTION_COMMAND_KEY  
mnemonic 모든 버튼 MNEMONIC_KEY null 치. 또는, 버튼의 mnemonic 프로퍼티내의 Action 가 「\0」으로 설정됩니다.
text 모든 버튼 NAME 버튼의 텍스트에 Action 의 텍스트를 반영시키지 않는 경우는,hideActionText 프로퍼티을 true 로 설정합니다. hideActionTexttrue 의 경우,Action 를 설정하면(자), 버튼의 텍스트가 null 로 바뀌어,NAME 에의 변경이 무시됩니다. hideActionText 는, 일반적으로 Icon 만을 표시하므로, 툴바 버튼에 적절하고 있습니다. JToolBar.add(Action) 는,ActionLARGE_ICON_KEY 또는 SMALL_ICON 의 값이 null 가 아닌 경우, 프로퍼티을 true 로 설정합니다.
displayedMnemonicIndex 모든 버튼 DISPLAYED_MNEMONIC_INDEX_KEY DISPLAYED_MNEMONIC_INDEX_KEY 의 값이 텍스트의 경계를 넘는 경우는, 무시됩니다. setAction 가 불려 갔을 때에,Action 의 값이 null 의 경우는, 니마닉(mnemonic)의 인덱스의 표시는 갱신되지 않습니다. 그 후에 DISPLAYED_MNEMONIC_INDEX_KEY 로 변경을 더하려면 ,null 는 -1 으로서 처리됩니다.
icon JCheckBox,JToggleButton, 및 JRadioButton 를 제외하는 모든 버튼. LARGE_ICON_KEY 또는 SMALL_ICON JMenuItem 서브 클래스는,SMALL_ICON 만을 사용합니다. 그 외의 모든 버튼은,LARGE_ICON_KEY 를 사용합니다. 값이 null 의 경우는,SMALL_ICON 를 사용합니다.
accelerator 모든 JMenuItem 서브 클래스 (JMenu 를 제외한다). ACCELERATOR_KEY  
selected JToggleButton,JCheckBox, JRadioButton,JCheckBoxMenuItem, 및 JRadioButtonMenuItem SELECTED_KEY 이 프로퍼티에 따르는 컴퍼넌트는, 값이 non-null 인 경우, 이 값만을 사용합니다. 예를 들어,JToggleButtonSELECTED_KEY 의 값이 nullAction 를 설정했을 경우,JToggleButton 는 선택된 상태를 결코 갱신하지 않습니다. 같이ActionSELECTED_KEYnon-null 치의 경우,JToggleButton 의 선택된 상태가 변화할 때마다, 값은 Action 에 돌아옵니다.
이 프로퍼티에 따르는 컴퍼넌트는, 선택된 상태를 이 프로퍼티 상태와 동기화합니다. 같은 Action 를 복수의 컴퍼넌트로 사용하는 경우, 모든 컴퍼넌트의 선택된 상태가 이 프로퍼티 상태와 동기 합니다. ButtonGroup 내의 JToggleButton 와 같이, 서로 배타적인 관계에 있는 버튼은, 그 중의 어떤 것이나 1 개만이 선택됩니다. 이 때문에,SELECTED_KEY 프로퍼티의 값을 정의하는 Action 를, 서로 배타적인 관계에 있는 복수의 버튼으로 사용하지 말아 주세요.

JPopupMenu,JToolBar, 및 JMenu 는 모두, 컴퍼넌트의 작성과 대응하는 컴퍼넌트상에서의 Action 의 설정에 편리한 메소드를 제공합니다. 자세한 것은, 각 클래스의 설명을 참조해 주세요.

Action 는,PropertyChangeListener 를 사용해,Action 가 변경된 것을 청취자에게 통지합니다. Bean 스펙에는, 프로퍼티명 null 를 사용해 복수의 값이 변경된 것을 나타낼 수가 있다고 기재되어 있습니다. 디폴트에서는,Action 를 실행하는 Swing 컴퍼넌트는, 이러한 변경을 처리하지 않습니다. Swing 가 Bean 스펙에 따라 null 를 처리하도록(듯이) 하려면 , 시스템 프로퍼티 swing.actions.reconfigureOnNullString 치를 true 로 설정합니다.

관련 항목:
AbstractAction

필드의 개요
static String ACCELERATOR_KEY
          액션의 가속기로서 사용하는 KeyStroke 의 포함에 사용되는 키입니다.
static String ACTION_COMMAND_KEY
          JComponent 에 관련하는 Keymap 에 상주하고 있는 결과적으로 Action 가 통지될 때 작성되는 ActionEvent 의 커멘드 String 의 판정에 사용되는 키입니다.
static String DEFAULT
          현재 사용되고 있지 않습니다.
static String DISPLAYED_MNEMONIC_INDEX_KEY
          니마닉(mnemonic)의 장식이 draw 되는 텍스트내의 인덱스 (NAME 프로퍼티으로 식별된다)에 대응하는 Integer 의 포함에 사용되는 키입니다.
static String LARGE_ICON_KEY
          Icon 를 포함하기 위해서 사용되는 키입니다.
static String LONG_DESCRIPTION
          액션에 관한 상세한 String 의 설명을 포함하기 위해서 사용되는 키입니다.
static String MNEMONIC_KEY
          KeyEvent 키코드의 1 개에 대응하는 Integer 의 포함에 사용되는 키입니다.
static String NAME
          액션의 이름을 나타내는 String 의 포함에 사용하는 키입니다.
static String SELECTED_KEY
          선택된 상태에 대응하는 Boolean 의 포함에 사용되는 키입니다.
static String SHORT_DESCRIPTION
          액션에 관한 짧은 String 의 설명을 포함하기 위해서 사용되는 키입니다.
static String SMALL_ICON
          ImageIcon 와 같이 작은 Icon 를 포함하기 위해서 사용되는 키입니다.
 
메소드의 개요
 void addPropertyChangeListener (PropertyChangeListener  listener)
          PropertyChange 청취자를 추가합니다.
 Object getValue (String  key)
          관련지을 수 있고 있는 키를 사용해 객체의 프로퍼티을 1개 돌려줍니다.
 boolean isEnabled ()
          Action 의 유효 상태를 돌려줍니다.
 void putValue (String  key, Object  value)
          관련지을 수 있고 있는 키를 사용해, 객체의 프로퍼티을 1개 설정합니다.
 void removePropertyChangeListener (PropertyChangeListener  listener)
          PropertyChange 청취자를 삭제합니다.
 void setEnabled (boolean b)
          Action 의 유효 상태를 설정합니다.
 
인터페이스 java.awt.event. ActionListener 로부터 상속된 메소드
actionPerformed
 

필드의 상세

DEFAULT

static final String  DEFAULT
현재 사용되고 있지 않습니다.

관련 항목:
정수 필드치

NAME

static final String  NAME
액션의 이름을 나타내는 String 의 포함에 사용하는 키입니다. 메뉴 또는 버튼으로 사용됩니다.

관련 항목:
정수 필드치

SHORT_DESCRIPTION

static final String  SHORT_DESCRIPTION
액션에 관한 짧은 String 의 설명을 포함하기 위해서 사용되는 키입니다. 툴팁의 텍스트에 사용됩니다.

관련 항목:
정수 필드치

LONG_DESCRIPTION

static final String  LONG_DESCRIPTION
액션에 관한 상세한 String 의 설명을 포함하기 위해서 사용되는 키입니다. 문맥 의존 헬프로 사용할 수가 있습니다.

관련 항목:
정수 필드치

SMALL_ICON

static final String  SMALL_ICON
ImageIcon 와 같이 작은 Icon 를 포함하기 위해서 사용되는 키입니다. 일반적으로은 JMenuItem 등의 메뉴로 사용됩니다.

메뉴와 버튼으로 같은 Action 를 사용하는 경우는, 일반적으로,SMALL_ICONLARGE_ICON_KEY 를 양쪽 모두 지정합니다. 메뉴는 SMALL_ICON, 버튼은 LARGE_ICON_KEY 를 사용합니다.

관련 항목:
정수 필드치

ACTION_COMMAND_KEY

static final String  ACTION_COMMAND_KEY
JComponent 에 관련하는 Keymap 에 상주하고 있는 결과적으로 Action 가 통지될 때 작성되는 ActionEvent 의 커멘드 String 의 판정에 사용되는 키입니다.

관련 항목:
정수 필드치

ACCELERATOR_KEY

static final String  ACCELERATOR_KEY
액션의 가속기로서 사용하는 KeyStroke 의 포함에 사용되는 키입니다.

도입된 버젼:
1.3
관련 항목:
정수 필드치

MNEMONIC_KEY

static final String  MNEMONIC_KEY
KeyEvent 키코드의 1 개에 대응하는 Integer 의 포함에 사용되는 키입니다. 값은 일반적으로, 니마닉(mnemonic)를 지정하기 위해서 사용됩니다. 다음에 예를 나타냅니다. myAction.putValue(Action.MNEMONIC_KEY, KeyEvent.VK_A) 는,myAction 의 니마닉(mnemonic)를 「a」로 설정합니다.

도입된 버젼:
1.3
관련 항목:
정수 필드치

SELECTED_KEY

static final String  SELECTED_KEY
선택된 상태에 대응하는 Boolean 의 포함에 사용되는 키입니다. 일반적으로, 의미가 있는 선택 상태의 컴퍼넌트에서만 사용됩니다. 예를 들어,JRadioButtonJCheckBox 는 이것을 사용합니다만,JMenu 의 인스턴스는 사용하지 않습니다.

이 프로퍼티은, 컴퍼넌트에 의해 읽기와 설정의 양쪽 모두를 하는 점으로써, 다른 프로퍼티과는 다릅니다. 예를 들어,ActionJCheckBox 에 접속되고 있는 경우,JCheckBox 의 선택 상태는 Action 의 선택 상태로부터 설정됩니다. 사용자가 JCheckBox 를 클릭하면(자),JCheckBoxAction 의 양쪽 모두의 선택 상태가 갱신됩니다.

주:기존의 Action 와의 충돌을 막기 위해, 이 필드의 값의 전에는 「Swing」라고 하는 접두사가 붙습니다.

도입된 버젼:
1.6
관련 항목:
정수 필드치

DISPLAYED_MNEMONIC_INDEX_KEY

static final String  DISPLAYED_MNEMONIC_INDEX_KEY
니마닉(mnemonic)의 장식이 draw 되는 텍스트내의 인덱스 (NAME 프로퍼티으로 식별된다)에 대응하는 Integer 의 포함에 사용되는 키입니다. 이 프로퍼티의 값이 텍스트의 길이 이상의 경우는,-1 으로서 처리됩니다.

주:기존의 Action 와의 충돌을 막기 위해, 이 필드의 값의 전에는 「Swing」라고 하는 접두사가 붙습니다.

도입된 버젼:
1.6
관련 항목:
AbstractButton.setDisplayedMnemonicIndex(int) , 정수 필드치

LARGE_ICON_KEY

static final String  LARGE_ICON_KEY
Icon 를 포함하기 위해서 사용되는 키입니다. 일반적으로,JButton,JToggleButton 등의 버튼으로 사용됩니다.

메뉴와 버튼으로 같은 Action 를 사용하는 경우는, 일반적으로,SMALL_ICONLARGE_ICON_KEY 를 양쪽 모두 지정합니다. 메뉴는 SMALL_ICON, 버튼은 LARGE_ICON_KEY 를 사용합니다.

주:기존의 Action 와의 충돌을 막기 위해, 이 필드의 값의 전에는 「Swing」라고 하는 접두사가 붙습니다.

도입된 버젼:
1.6
관련 항목:
정수 필드치
메소드의 상세

getValue

Object  getValue(String  key)
관련지을 수 있고 있는 키를 사용해 객체의 프로퍼티을 1개 돌려줍니다.

관련 항목:
putValue(java.lang.String, java.lang.Object)

putValue

void putValue(String  key,
              Object  value)
관련지을 수 있고 있는 키를 사용해, 객체의 프로퍼티을 1개 설정합니다. 값이 변경되면(자),PropertyChangeEvent 가 청취자에게 송신됩니다.

파라미터:
key - 키가 포함되고 있는 String
value - Object

setEnabled

void setEnabled(boolean b)
Action 의 유효 상태를 설정합니다. 유효한 경우는, 이 객체에 관련한 임의의 컴퍼넌트는 액티브하고, 객체의 actionPerformed 메소드를 트리거할 수 있습니다. 값이 변경되면(자),PropertyChangeEvent 가 청취자에게 송신됩니다.

파라미터:
b - 이 Action 를 유효하게 하는 경우는 true, 무효로 하는 경우는 false

isEnabled

boolean isEnabled()
Action 의 유효 상태를 돌려줍니다. 유효한 경우는, 이 객체에 관련한 임의의 컴퍼넌트는 액티브하고, 객체의 actionPerformed 메소드를 트리거할 수 있습니다.

반환값:
Action 가 유효한 경우는 true

addPropertyChangeListener

void addPropertyChangeListener(PropertyChangeListener  listener)
PropertyChange 청취자를 추가합니다. 컨테이너, 및 접속된 컴퍼넌트는, 이러한 메소드를 사용해 Action 객체의 통지 대상으로 해 등록합니다. Action 객체가 유효하게 되었을 경우, 또는 그 외의 프로퍼티이 변화했을 경우, 등록된 청취자로 변경이 통지됩니다.

파라미터:
listener - PropertyChangeListener 객체

removePropertyChangeListener

void removePropertyChangeListener(PropertyChangeListener  listener)
PropertyChange 청취자를 삭제합니다.

파라미터:
listener - PropertyChangeListener 객체
관련 항목:
addPropertyChangeListener(java.beans.PropertyChangeListener)

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.