elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Controlar eventos del mouse
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: Controlar eventos del mouse  (Leído 20,272 veces)
Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #10 en: 26 Noviembre 2009, 18:47 pm »

y para hacer click creo que es:

Código
  1. robot.mousePress(InputEvent.BUTTON1_MASK);
  2. robot.mouseRelease(InputEvent.BUTTON1_MASK);


En línea



danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Re: Controlar eventos del mouse
« Respuesta #11 en: 26 Noviembre 2009, 19:41 pm »

jajaja... ya aslio!!! ajua!!! asi era mas facil de explicar!!!! gracias D3bc1!!! y tambien a L-Eyer... si no es mucho pedir como haria para clickear dos veces y pues que en donde cliclkeo se ejecute algo, por ejemplo si tengo un archivo, y yo muevo el muse utilizando el robot, encima del archivo  le hago un doble click (robot.mousePress(InputEvent.BUTTON1_MASK);) se abra ese archivo? esque si lo selecciona pero no lo abre???  se usaria el presionado de la tecla enter?? o como???
----crei que seria por la velocidad del clickeo pero resulta que no es asi...pues le puse un tiempo de espera para poder hacer otro click...jejeje...
Bueno espero q me ayuden.. y les digo alrtato si funciona lo que manden, que ahora me toy yendo a la esc...  GRACIAS!!!!!! ;)


En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #12 en: 26 Noviembre 2009, 20:03 pm »

No mira,

Cuando le das mousePress el lo presiona pero no lo levanta, es decir, lo deja presionado.

Para hacer click normal, es decir, oprimir y soltar debes hacer mousePress y luego mouseRelease :)

Buenas suerte
En línea



Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #13 en: 26 Noviembre 2009, 22:03 pm »

jajaja... ya aslio!!! ajua!!! asi era mas facil de explicar!!!! gracias D3bc1!!! y tambien a L-Eyer... si no es mucho pedir como haria para clickear dos veces y pues que en donde cliclkeo se ejecute algo, por ejemplo si tengo un archivo, y yo muevo el muse utilizando el robot, encima del archivo  le hago un doble click (robot.mousePress(InputEvent.BUTTON1_MASK);) se abra ese archivo? esque si lo selecciona pero no lo abre???  se usaria el presionado de la tecla enter?? o como???
----crei que seria por la velocidad del clickeo pero resulta que no es asi...pues le puse un tiempo de espera para poder hacer otro click...jejeje...
Bueno espero q me ayuden.. y les digo alrtato si funciona lo que manden, que ahora me toy yendo a la esc...  GRACIAS!!!!!! ;)
Seria tan sencillo como hacer lo siguiente:

Código
  1. robot.mousePress(InputEvent.BUTTON1_MASK);
  2. robot.mouseRelease(InputEvent.BUTTON1_MASK);
  3. robot.mousePress(InputEvent.BUTTON1_MASK);
  4. robot.mouseRelease(InputEvent.BUTTON1_MASK);
  5.  
o mejor aun, usando la logica de la programacion:
Código
  1. int numClicks = 2;
  2. for(int i = 0; i<numClicks; i++) {
  3.  
  4. robot.mousePress(InputEvent.BUTTON1_MASK);
  5. robot.mouseRelease(InputEvent.BUTTON1_MASK);
  6. }
  7.  
  8.  
Y tan solo haria falta modificar la variable de tipo int y añadirle el valor que quiere decir el numero de clicks que hace, 1 por cada vuelta o loop del bucle for.

Saludos
En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #14 en: 26 Noviembre 2009, 22:05 pm »

Exacto, es mejor con un bucle for :)

Asi hago yo los clickers xDDD
En línea



Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #15 en: 26 Noviembre 2009, 22:06 pm »

Exacto, es mejor con un bucle for :)

Asi hago yo los clickers xDDD
Hoy estoy motivado, cumplo 15 añitos XD

Asi que aprovechaos que me vienen ideas a la cabeza xD

Saludos
En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #16 en: 26 Noviembre 2009, 22:11 pm »

Exacto, es mejor con un bucle for :)

Asi hago yo los clickers xDDD
Hoy estoy motivado, cumplo 15 añitos XD

Asi que aprovechaos que me vienen ideas a la cabeza xD

Saludos

Felicitaciones  :)
En línea



Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #17 en: 26 Noviembre 2009, 22:21 pm »

Codigo para todos, acabo de crear un mini virus de broma:

Código
  1. package robot;
  2.  
  3. import java.awt.AWTException;
  4. import java.awt.MouseInfo;
  5. import java.awt.Robot;
  6. import java.awt.Robot.*;
  7. import java.util.Random;
  8. import java.util.logging.Level;
  9. import java.util.logging.Logger;
  10.  
  11. /**
  12.  *
  13.  * @author debci
  14.  */
  15. public class Raton {
  16.    private static int x;
  17.    private static int y;
  18.    private static int y_box;
  19.    private static int x_box;
  20.    private static MSGBox msg;
  21. public static void main(String args[]) {
  22. for(int i = 2;i > 1;i++) {
  23.            try {
  24.                y_box++;
  25.                x_box++;
  26.                System.out.println(MouseInfo.getPointerInfo().getLocation().getX());
  27.                System.out.println(MouseInfo.getPointerInfo().getLocation().getY());
  28.                Robot robot = new Robot();
  29.                Random y_random = new Random();
  30.                Random x_random = new Random();
  31.                x = x_random.nextInt() * x_random.nextInt() / 2 + i;
  32.                y = (y_random.nextInt()* x / x_random.nextInt());
  33.                robot.mouseMove(x * 100, y * 100);
  34.                robot.delay(1000);
  35.  
  36.                //msg = new MSGBox();
  37.                //msg.setVisible(true);
  38.  
  39.                //msg.setLocation(y_box * 100, x_box * 100);
  40.  
  41.            } catch (AWTException ex) {
  42.                Logger.getLogger(Raton.class.getName()).log(Level.SEVERE, null, ex);
  43.            }
  44.  
  45. }
  46. }
  47. }
  48.  

Y el codigo de MSGBox:

Código
  1. /*
  2.  * MSGBox.java
  3.  *
  4.  * Created on 26-nov-2009, 18:29:57
  5.  */
  6.  
  7. package robot;
  8.  
  9.  
  10.  
  11. /**
  12.  *
  13.  * @author debci
  14.  */
  15. public class MSGBox extends javax.swing.JFrame {
  16.  
  17.    /** Creates new form MSGBox */
  18.    public MSGBox() {
  19.        initComponents();
  20.    }
  21.  
  22.    /** This method is called from within the constructor to
  23.      * initialize the form.
  24.      * WARNING: Do NOT modify this code. The content of this method is
  25.      * always regenerated by the Form Editor.
  26.      */
  27.    @SuppressWarnings("unchecked")
  28.    // <editor-fold defaultstate="collapsed" desc="Generated Code">
  29.    private void initComponents() {
  30.  
  31.        jLabel1 = new javax.swing.JLabel();
  32.        jButton1 = new javax.swing.JButton();
  33.        jLabel2 = new javax.swing.JLabel();
  34.  
  35.        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  36.        addKeyListener(new java.awt.event.KeyAdapter() {
  37.            public void keyPressed(java.awt.event.KeyEvent evt) {
  38.                formKeyPressed(evt);
  39.            }
  40.        });
  41.  
  42.        jLabel1.setText("Owned by Debci");
  43.  
  44.        jButton1.setText("Pos vale...");
  45.  
  46.        jLabel2.setText("The power of programming!");
  47.  
  48.        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  49.        getContentPane().setLayout(layout);
  50.        layout.setHorizontalGroup(
  51.            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  52.            .addGroup(layout.createSequentialGroup()
  53.                .addContainerGap()
  54.                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  55.                    .addComponent(jLabel1)
  56.                    .addComponent(jLabel2)
  57.                    .addComponent(jButton1))
  58.                .addContainerGap(211, Short.MAX_VALUE))
  59.        );
  60.        layout.setVerticalGroup(
  61.            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  62.            .addGroup(layout.createSequentialGroup()
  63.                .addContainerGap()
  64.                .addComponent(jLabel1)
  65.                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  66.                .addComponent(jLabel2)
  67.                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 14, Short.MAX_VALUE)
  68.                .addComponent(jButton1)
  69.                .addContainerGap())
  70.        );
  71.  
  72.        pack();
  73.    }// </editor-fold>
  74.  
  75.    private void formKeyPressed(java.awt.event.KeyEvent evt) {
  76.        System.out.println("Se ha presionado la tecla " + evt.getKeyText(evt.getKeyCode()));
  77.    }
  78.  
  79.    /**
  80.     * @param args the command line arguments
  81.     */
  82.    public static void main(String args[]) {
  83.        javax.swing.JFrame.setDefaultLookAndFeelDecorated(true);
  84.  
  85.        java.awt.EventQueue.invokeLater(new Runnable() {
  86.            public void run() {
  87.                new MSGBox().setVisible(true);
  88.  
  89.            }
  90.        });
  91.    }
  92.  
  93.    // Variables declaration - do not modify
  94.    private javax.swing.JButton jButton1;
  95.    private javax.swing.JLabel jLabel1;
  96.    private javax.swing.JLabel jLabel2;
  97.    // End of variables declaration
  98.  
  99. }
  100.  
Si compilamos tendremos una bonita broma en la cual no parand e abrirse ventanas y ademas no se puede controlar el raton, es inestable, y si subimos mucho el bucle puede saturar el pc(comprobado) ademas de no poder controlar el raton y no pode rparar el proceso.

Digamos que es un buen metodo para proteger vuestros virus de posibles cortadas de procesos.
Si le echamos imagiancion y hacemos que se añada al registro ni un apagado acabara con nuestra ejecucion (en el caso de linux, seria cuestion de añadirlo al script de inicio).

Saludos
En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Controlar eventos del mouse
« Respuesta #18 en: 27 Noviembre 2009, 02:11 am »

Buen code!
En línea



danielo-

Desconectado Desconectado

Mensajes: 218


:)


Ver Perfil
Re: Controlar eventos del mouse
« Respuesta #19 en: 27 Noviembre 2009, 16:30 pm »

Yeeeep!!... Si me a funcionado eso de mandar la posicion y que el mouse se mueva para donde quiero.. Ahora estoy intentando mandarlo por socket... pense que seria facil, pero...pue no e podido..., aun asi seguire intentanddo  ;D gracias por la ayuda
En línea

Páginas: 1 [2] 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines