Foro de elhacker.net

Programación => Java => Mensaje iniciado por: ThePiuner en 19 Agosto 2013, 01:53 am



Título: Maximizar y minimizar
Publicado por: ThePiuner en 19 Agosto 2013, 01:53 am
Buenas soy nuevo en esta comunidad y me gustaría que me ayudaran en algo, como se hace para minimizar y maximizar una aplicación echa en java con el teclado ? por ejemplo cuando le den 'R' se comienza a ejecutar y se minimiza, ella se estará ejecutando en un bucle infinito controlado por hilo y mientras se este ejecutando y este minimizada si le dan 'S' se detenga y se maximice ?


Título: Re: Maximizar y minimizar
Publicado por: Alien-Z en 19 Agosto 2013, 14:19 pm
Aqui te explican cómo funcionan las operaciones de maximizar/minimizar en java: http://lefunes.wordpress.com/2008/02/18/iniciar-maximizado-o-minimizado-un-jframe/

Dichas operaciones también se pueden ejecutar cuando lees una entrada del teclado.

Saludos.


Título: Re: Maximizar y minimizar
Publicado por: ThePiuner en 19 Agosto 2013, 17:02 pm
Aqui te explican cómo funcionan las operaciones de maximizar/minimizar en java: http://lefunes.wordpress.com/2008/02/18/iniciar-maximizado-o-minimizado-un-jframe/

Dichas operaciones también se pueden ejecutar cuando lees una entrada del teclado.

Saludos.

Gracias pero eso no es lo que ando buscando, lo que quiero es que cuando le den a la tecla "X" ( cuando digo X es cualquier tecla definida por mi ) se minimice y comience a hacer las operaciones para lo que esta programado y mientras se este ejecutando si le dan a la tecla "X" (otra tecla definida por mi) el programa deje de ejecutarse y se maximice


Título: Re: Maximizar y minimizar
Publicado por: 1mpuls0 en 19 Agosto 2013, 17:12 pm
Exactamente que deseas hacer.
El tema va más allá de lo que se piensa.

A veces es un poco complicado por el tema del focus.

Para las hotkeys en java existe la clase.metodo  KeyStroke.getKeyStroke.

Y cuando digo exactamente me refiero a que detalles todo, es decir, vas a tener un jframe, vas a tener botones, labels, etc?.


Edito.

También puedes colocar un evento al jframe en este caso sería keyPressed.

Con keyPressen sería así para minimizar.
Código
  1. if(evt.getKeyCode()==82){
  2.            this.setExtendedState(javax.swing.JFrame.ICONIFIED);
  3.        }
  4.  

El problema con esta alternativa es que piedes el foco del jframe. Entonces no serviría para el proposito.


Intenta con Windows Listener, seguro te funciona.


http://docs.oracle.com/javase/tutorial/uiswing/events/windowlistener.html

Saludos.


Título: Re: Maximizar y minimizar
Publicado por: ThePiuner en 20 Agosto 2013, 00:56 am
Exactamente que deseas hacer.
El tema va más allá de lo que se piensa.

A veces es un poco complicado por el tema del focus.

Para las hotkeys en java existe la clase.metodo  KeyStroke.getKeyStroke.

Y cuando digo exactamente me refiero a que detalles todo, es decir, vas a tener un jframe, vas a tener botones, labels, etc?.


Edito.

También puedes colocar un evento al jframe en este caso sería keyPressed.

Con keyPressen sería así para minimizar.
Código
  1. if(evt.getKeyCode()==82){
  2.            this.setExtendedState(javax.swing.JFrame.ICONIFIED);
  3.        }
  4.  

El problema con esta alternativa es que piedes el foco del jframe. Entonces no serviría para el proposito.


Intenta con Windows Listener, seguro te funciona.


http://docs.oracle.com/javase/tutorial/uiswing/events/windowlistener.html

Saludos.

Lo que quiero hacer es algo parecido a un mouse recorder pero que no este limitado a cierta cantidad de intentos, si no que estará de manera ilimitada por medio de hilos con intervalos de un segundo pero el problema es que al comenzarlo ya sea con el keyPressen o con un boton, el problema es a la hora de detenerle ya que no podre utilizar el mouse para hacerlo  :huh:


Título: Re: Maximizar y minimizar
Publicado por: 1mpuls0 en 20 Agosto 2013, 01:17 am
Lo que quiero hacer es algo parecido a un mouse recorder pero que no este limitado a cierta cantidad de intentos, si no que estará de manera ilimitada por medio de hilos con intervalos de un segundo pero el problema es que al comenzarlo ya sea con el keyPressen o con un boton, el problema es a la hora de detenerle ya que no podre utilizar el mouse para hacerlo  :huh:

Por qué dices eso?, no sé si el programa que mencionas lo hace o entendiste mal algo que dije.
La verdad no sé que hace mouse recorder pero tengo una idea de lo que deseas hacer.


Saludos.


Título: Re: Maximizar y minimizar
Publicado por: TriBlack en 20 Agosto 2013, 16:52 pm
Buenas... este codigo sirve para captar las teclas asi la aplicacion pierda el foco espero te sirva 

Código:
public class GlobalKeyListenerExample implements NativeKeyListener {
        public void nativeKeyPressed(NativeKeyEvent e) {
                System.out.println("Key Pressed: " + NativeKeyEvent.getKeyText(e.getKeyCode()));

                if (e.getKeyCode() == NativeKeyEvent.VK_ESCAPE) {
                        GlobalScreen.unregisterNativeHook();
                }
        }

        public void nativeKeyReleased(NativeKeyEvent e) {
                System.out.println("Key Released: " + NativeKeyEvent.getKeyText(e.getKeyCode()));
        }

        public void nativeKeyTyped(NativeKeyEvent e) {
                System.out.println("Key Typed: " + e.getKeyText(e.getKeyCode()));
        }

        public static void main(String[] args) {
                try {
                        GlobalScreen.registerNativeHook();
                }
                catch (NativeHookException ex) {
                        System.err.println("There was a problem registering the native hook.");
                        System.err.println(ex.getMessage());

                        System.exit(1);
                }

                //Construct the example object and initialze native hook.
                GlobalScreen.getInstance().addNativeKeyListener(new GlobalKeyListenerExample());
        }
}


Título: Re: Maximizar y minimizar
Publicado por: 1mpuls0 en 20 Agosto 2013, 17:01 pm
Buenas... este codigo sirve para captar las teclas asi la aplicacion pierda el foco espero te sirva  

Por el código que veo es una librería externa, y al parecer está hecho con JNI.

Bueno mientras funcione está bien xD


Título: Re: Maximizar y minimizar
Publicado por: TriBlack en 20 Agosto 2013, 17:45 pm
Por el código que veo es una librería externa, y al parecer está hecho con JNI.

Bueno mientras funcione está bien xD

Jeje si es con la librera JNativeHook 1.1.4 aqui la info https://code.google.com/p/jnativehook/

Creo que eso le servirá ^-^