java类java.awt.event.HierarchyListener的实例源码

BasicInternalFrameTitlePane.java 文件源码 项目:cn1 阅读 33 收藏 0 点赞 0 评论 0
protected void installListeners() {
    if (propertyChangeListener == null) {
        propertyChangeListener = createPropertyChangeListener();
    }
    frame.addPropertyChangeListener(propertyChangeListener);

    // propertyChangeListener will be uninstalled
    // when title pane is removed from internal frame
    addHierarchyListener(new HierarchyListener() {
        public void hierarchyChanged(final HierarchyEvent e) {
            if (e.getChanged() == BasicInternalFrameTitlePane.this
                    && (e.getChangeFlags() & HierarchyEvent.PARENT_CHANGED) != 0
                    && !frame.isAncestorOf(BasicInternalFrameTitlePane.this)) {
                uninstallListeners();
            }
        }
    });
}
Component.java 文件源码 项目:JamVM-PH 阅读 27 收藏 0 点赞 0 评论 0
/**
 * Adds the specified listener to this component. This is harmless if the
 * listener is null, but if the listener has already been registered, it
 * will now be registered twice.
 *
 * @param listener the new listener to add
 * @see HierarchyEvent
 * @see #removeHierarchyListener(HierarchyListener)
 * @see #getHierarchyListeners()
 * @since 1.3
 */
public synchronized void addHierarchyListener(HierarchyListener listener)
{
  if (listener != null)
    {
      hierarchyListener = AWTEventMulticaster.add(hierarchyListener,
                                                  listener);
      newEventsOnly = true;
      // Need to lock the tree, otherwise we might end up inconsistent.
      synchronized (getTreeLock())
      {
        numHierarchyListeners++;
        if (parent != null)
          parent.updateHierarchyListenerCount(AWTEvent.HIERARCHY_EVENT_MASK,
                                              1);
      }
    }
}
VLCMediaPlayer.java 文件源码 项目:UiL-OTS-Video-Coding-System 阅读 21 收藏 0 点赞 0 评论 0
private void internalCreateNewVisualComponent(String [] prepareOptions) {
       playerComponent = new EmbeddedMediaPlayerComponent();
       player = playerComponent.getMediaPlayer();
       player.addMediaPlayerEventListener(infoListener);

       playerComponent.addHierarchyListener(new HierarchyListener() {
        // This makes sure that when the player window becomes displayable
        // (which is a subset of visible) the player shows some frame in it. 
        // This can't be done before that time.
           public void hierarchyChanged(HierarchyEvent e) {
            long flags = e.getChangeFlags() & (HierarchyEvent.PARENT_CHANGED);
               if ((flags != 0) &&  e.getComponent().isDisplayable()) {
                   player.start();
                    player.pause();
            }
           }
       });

       // configure the player with the given media file
       player.prepareMedia(mediaURL, prepareOptions);
       player.parseMedia();

       player.setEnableMouseInputHandling(false);
       player.setEnableKeyInputHandling(false);
}
WindowsMenuBarUI.java 文件源码 项目:openjdk-jdk7u-jdk 阅读 27 收藏 0 点赞 0 评论 0
@Override
protected void installListeners() {
    if (WindowsLookAndFeel.isOnVista()) {
        installWindowListener();
        hierarchyListener =
            new HierarchyListener() {
                public void hierarchyChanged(HierarchyEvent e) {
                    if ((e.getChangeFlags()
                            & HierarchyEvent.DISPLAYABILITY_CHANGED) != 0) {
                        if (menuBar.isDisplayable()) {
                            installWindowListener();
                        } else {
                            uninstallWindowListener();
                        }
                    }
                }
        };
        menuBar.addHierarchyListener(hierarchyListener);
    }
    super.installListeners();
}
ProcessingTopicPanel.java 文件源码 项目:wandora 阅读 20 收藏 0 点赞 0 评论 0
private void showRichErrorDialog(String msg) {
final JTextArea area = new JTextArea();
area.setFont(errorMessageFont);
//area.setPreferredSize(new Dimension(520, 180));
area.setEditable(false);
area.setText(msg);

// Make the JOptionPane resizable using the HierarchyListener
       area.addHierarchyListener(new HierarchyListener() {
           public void hierarchyChanged(HierarchyEvent e) {
               Window window = SwingUtilities.getWindowAncestor(area);
               if (window instanceof Dialog) {
                   Dialog dialog = (Dialog)window;
                   if (!dialog.isResizable()) {
                       dialog.setResizable(true);
                   }
               }
           }
       });

JScrollPane scroller = new JScrollPane(area);
scroller.setPreferredSize(new Dimension(520, 180));
JOptionPane.showMessageDialog(Wandora.getWandora(), scroller, "Errors", JOptionPane.PLAIN_MESSAGE);
   }
Component.java 文件源码 项目:classpath 阅读 33 收藏 0 点赞 0 评论 0
/**
 * Adds the specified listener to this component. This is harmless if the
 * listener is null, but if the listener has already been registered, it
 * will now be registered twice.
 *
 * @param listener the new listener to add
 * @see HierarchyEvent
 * @see #removeHierarchyListener(HierarchyListener)
 * @see #getHierarchyListeners()
 * @since 1.3
 */
public synchronized void addHierarchyListener(HierarchyListener listener)
{
  if (listener != null)
    {
      hierarchyListener = AWTEventMulticaster.add(hierarchyListener,
                                                  listener);
      newEventsOnly = true;
      // Need to lock the tree, otherwise we might end up inconsistent.
      synchronized (getTreeLock())
      {
        numHierarchyListeners++;
        if (parent != null)
          parent.updateHierarchyListenerCount(AWTEvent.HIERARCHY_EVENT_MASK,
                                              1);
      }
    }
}
Component.java 文件源码 项目:freeVM 阅读 24 收藏 0 点赞 0 评论 0
@SuppressWarnings("unchecked")
public <T extends EventListener> T[] getListeners(Class<T> listenerType) {
    if (ComponentListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getComponentListeners();
    } else if (FocusListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getFocusListeners();
    } else if (HierarchyBoundsListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getHierarchyBoundsListeners();
    } else if (HierarchyListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getHierarchyListeners();
    } else if (InputMethodListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getInputMethodListeners();
    } else if (KeyListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getKeyListeners();
    } else if (MouseWheelListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseWheelListeners();
    } else if (MouseMotionListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseMotionListeners();
    } else if (MouseListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseListeners();
    } else if (PropertyChangeListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getPropertyChangeListeners();
    }
    return (T[]) Array.newInstance(listenerType, 0);
}
BasicInternalFrameTitlePane.java 文件源码 项目:freeVM 阅读 27 收藏 0 点赞 0 评论 0
protected void installListeners() {
    if (propertyChangeListener == null) {
        propertyChangeListener = createPropertyChangeListener();
    }
    frame.addPropertyChangeListener(propertyChangeListener);

    // propertyChangeListener will be uninstalled
    // when title pane is removed from internal frame
    addHierarchyListener(new HierarchyListener() {
        public void hierarchyChanged(final HierarchyEvent e) {
            if (e.getChanged() == BasicInternalFrameTitlePane.this
                    && (e.getChangeFlags() & HierarchyEvent.PARENT_CHANGED) != 0
                    && !frame.isAncestorOf(BasicInternalFrameTitlePane.this)) {
                uninstallListeners();
            }
        }
    });
}
Component.java 文件源码 项目:freeVM 阅读 22 收藏 0 点赞 0 评论 0
@SuppressWarnings("unchecked")
public <T extends EventListener> T[] getListeners(Class<T> listenerType) {
    if (ComponentListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getComponentListeners();
    } else if (FocusListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getFocusListeners();
    } else if (HierarchyBoundsListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getHierarchyBoundsListeners();
    } else if (HierarchyListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getHierarchyListeners();
    } else if (InputMethodListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getInputMethodListeners();
    } else if (KeyListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getKeyListeners();
    } else if (MouseWheelListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseWheelListeners();
    } else if (MouseMotionListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseMotionListeners();
    } else if (MouseListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getMouseListeners();
    } else if (PropertyChangeListener.class.isAssignableFrom(listenerType)) {
        return (T[]) getPropertyChangeListeners();
    }
    return (T[]) Array.newInstance(listenerType, 0);
}
BasicInternalFrameTitlePane.java 文件源码 项目:freeVM 阅读 25 收藏 0 点赞 0 评论 0
protected void installListeners() {
    if (propertyChangeListener == null) {
        propertyChangeListener = createPropertyChangeListener();
    }
    frame.addPropertyChangeListener(propertyChangeListener);

    // propertyChangeListener will be uninstalled
    // when title pane is removed from internal frame
    addHierarchyListener(new HierarchyListener() {
        public void hierarchyChanged(final HierarchyEvent e) {
            if (e.getChanged() == BasicInternalFrameTitlePane.this
                    && (e.getChangeFlags() & HierarchyEvent.PARENT_CHANGED) != 0
                    && !frame.isAncestorOf(BasicInternalFrameTitlePane.this)) {
                uninstallListeners();
            }
        }
    });
}


问题


面经


文章

微信
公众号

扫码关注公众号