MultiTabbedPaneUI
MultiTabbedPaneUI
TabbedPaneUIs를 결합하는 데 사용되는 다중화(multiplexing) UI예요. 이 파일은 AutoMulti에 의해 자동으로 생성되었어요.
본문
MultiTabbedPaneUI는 하나의 컴포넌트에 여러 개의 TabbedPaneUI를 동시에 연결할 수 있게 하는 멀티플렉싱 UI 클래스예요. 내부의 uis 벡터에 실제 UI들을 보관하며, 각 UI 메서드를 그 벡터의 모든 UI에 위임해요.
대표적인 시그니처는 다음과 같아요.
protected Vector<ComponentUI> uis
public MultiXxxUI()
public ComponentUI[] getUIs()
public boolean contains(JComponent a, int b, int c)
public void update(Graphics a, JComponent b)
public static ComponentUI createUI(JComponent a)
public void installUI(JComponent a)
public void uninstallUI(JComponent a)
public void paint(Graphics a, JComponent b)
public Dimension getPreferredSize(JComponent a)
public Dimension getMinimumSize(JComponent a)
public Dimension getMaximumSize(JComponent a)
public int getAccessibleChildrenCount(JComponent a)
public Accessible getAccessibleChild(JComponent a, int b)
주요 필드와 메서드의 동작을 살펴볼게요.
uis— 실제 UI들을 담고 있는 벡터예요.createUI호출 시 채워지며,getUIs메서드로 얻을 수 있어요. 첫 번째 요소는 기본 Look and Feel에서 얻은 실제 UI임이 보장돼요.getUIs()— 이 다중화 UI와 연결된 UI들의 목록을 반환해요. 컴포넌트의 다중화 UI를 인지하는 애플리케이션이 UI를 처리할 수 있게 해주죠.createUI(JComponent a)— 보조(auxiliary) Look and Feel 중 하나가 이 UI를 지원하면 다중화 UI 인스턴스를 반환해요. 그렇지 않으면 기본 Look and Feel에서 얻은 UI 객체를 반환해요.installUI(JComponent a)— 이 객체가 처리하는 각 UI에서installUI메서드를 호출해요.uninstallUI(JComponent a)— 이 객체가 처리하는 각 UI에서uninstallUI메서드를 호출해요.paint(Graphics a, JComponent b)/update(...)— 이 객체가 처리하는 각 UI에서paint/update메서드를 호출해요.contains(...),getPreferredSize(...),getMinimumSize(...),getMaximumSize(...),getAccessibleChildrenCount(...),getAccessibleChild(...)— 각각 이 객체가 처리하는 모든 UI에 대응하는 메서드를 호출해요.