¿Cómo puedo (de forma nativa) poner la pantalla completa función de OSX Lion en una aplicación Java?

Las actuales respuestas dadas incorporar un buen método para lograr una especie de pantalla completa función. He leído que el Eclipse puede ser capaz de utilizar el «nativo» de pantalla completa función de León. Eso es lo que estoy preguntando sobre.

InformationsquelleAutor gamma | 2011-07-29

6 Comentarios

  1. 28

    He encontrado esto en Java de Apple notas de la versión:

    Mac OS X 10.7 Lion Soporte para pantalla Completa

    Aplicaciones Java en León, ahora pueden optar por la ventana a pantalla Completa función por la ventana. Los desarrolladores pueden utilizar el com.apple.eawt.FullScreenUtilities clase a la marca windows, como capaz de ser total blindado, y el com.apple.eawt.Aplicación.requestToggleFullScreen(Ventana) método mediante programación solicitar la ventana de entrar y salir del modo pantalla completa. Esta API no hace nada en Mac OS X 10.6 Snow Leopard.

    Más explícitamente, trate de llamar a esta fase temprana desde el constructor de su JFrames…

    /**
     * @param window
     */
    @SuppressWarnings({"unchecked", "rawtypes"})
    public static void enableOSXFullscreen(Window window) {
        Preconditions.checkNotNull(window);
        try {
            Class util = Class.forName("com.apple.eawt.FullScreenUtilities");
            Class params[] = new Class[]{Window.class, Boolean.TYPE};
            Method method = util.getMethod("setWindowCanFullScreen", params);
            method.invoke(util, window, true);
        } catch (ClassNotFoundException e1) {
        } catch (Exception e) {
            log.log(Level.WARNING, "OS X Fullscreen FAIL", e);
        }
    }
  2. 2

    Para aquellos de ustedes que no les importa un rápido y sucio solución:

    Llamada getRootPane().putClientProperty("apple.awt.fullscreenable", Boolean.valueOf(true)) desde el Marco de constructor. Esto es lo que setWindocCanFullScreen hace.

  3. 1

    Lo que usted está tratando de hacer se puede hacer a través de la com.apple.eawt de la biblioteca. Además, con el fin de evitar la escritura de código a través de la reflexión si usted también implementar su aplicación en otros sistemas operativos como Windows, Linux, etc. usted debe usar y distribuir incrustadas dentro de la aplicación de la AppleJavaExtensions.jar de Apple.

    Este es el método para hacer un marco ampliable en pantalla completa:

    FullScreenUtilities.setWindowCanFullScreen(window,true);

    Y este es el método para alternar pantalla completa:

    Application.getApplication().requestToggleFullScreen(window);

    donde el parámetro de ventana es el JFrame de la aplicación que usted está tratando de hacer pantalla completa capaz.

    Para ver un ejemplo de aplicación de echar un vistazo a RationalPlan Project.

    • Hizo ver, que la aceptó solución es bastante antiguo y que es más poderosa debido a la reflexión?
    • Mi respuesta es un poco solución complementaria para otros usuarios como yo que no quería molestar con la reflexión.
  4. -2

    Java permite el modo de pantalla completa, que no tiene nada que ver con León. (a través de chubbard)

    Si quieres escribir nativas de Cacao de aplicaciones con Java, es necesario utilizar JavaBridge. Sin embargo, JavaBridge está en desuso.

    Mi recomendación es: Si quieres escribir nativo OSX aplicaciones Cocoa, hacerlo en Objective C o Macruby. MacRuby está actualmente recibiendo financiamiento de Apple (Sansonetti es de tiempo completo empleado de Apple) y sólo podría tener un futuro con el Cacao. Java no.

    • Su enlace es el mismo que el de arriba. Su nativo recomendación tiene sentido, pero ya tenemos un completo y maduro de Java de la aplicación del producto. Apple suele tuvo especial OSX API para Java – yo esperaba que Oracle había algo similar para el León versión ya.
    • Sé que el enlace es el mismo, estoy tratando de dar una respuesta completa. Yo lo atribuyo a chubbard. Apple no pueden ofrecer más que eso, fue llamado JavaBridge. El enlace está arriba.
    • Me pueden agregar múltiples aplicaciones de la plataforma como NetBeans. Cuando se ejecuta en Mac, el menú está integrado a OSX en el menú (es decir, no hay «barra de menú» dentro de la ventana). Tienen una «pantalla completa» característica, pero no es como la del León de FS. Me gustaría crear un parche y lo presentará a NB equipo.

Dejar respuesta

Please enter your comment!
Please enter your name here