Java Swing UI Thread Event onShowingChanged(final JComponent component, final Runnable callback)

Here you can find the source of onShowingChanged(final JComponent component, final Runnable callback)

Description

on Showing Changed

License

Apache License

Declaration

public static void onShowingChanged(final JComponent component, final Runnable callback) 

Method Source Code

//package com.java2s;
/**/*from  ww  w . j ava  2  s  .  c  o m*/
 * A collection of small utilities for component management and reflection handling.
 * <p/>
 * <hr/> Copyright 2006-2012 Torsten Heup
 * <p/>
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * <p/>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p/>
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 */

import javax.swing.*;

import java.awt.event.HierarchyEvent;
import java.awt.event.HierarchyListener;

public class Main {
    public static void onShowingChanged(final JComponent component, final Runnable callback) {
        component.addHierarchyListener(new HierarchyListener() {
            public void hierarchyChanged(final HierarchyEvent e) {
                if (e.getComponent() == component && (e.getChangeFlags() & HierarchyEvent.SHOWING_CHANGED) > 0) {
                    callback.run();
                }
            }
        });
    }
}

Related

  1. isEDT()
  2. isEDT()
  3. isEventDispatchThread()
  4. isEventDispatchThread()
  5. isLinefeedTag(HTML.Tag tag)
  6. processOnSwingEventThread(Runnable todo, boolean wait)
  7. resultOfOnEventThread(final Callable task)
  8. runAndWaitOnEDT(Runnable r)
  9. runAndWaitOnEDT(Runnable runnable)