Advertisement
huneater

Spammer

Apr 26th, 2013
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.72 KB | None | 0 0
  1. package main;
  2.  
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.awt.event.KeyEvent;
  8. import java.awt.event.KeyListener;
  9.  
  10. /**
  11.  * User: Zsolt
  12.  * Date: 2013.04.26.
  13.  * Time: 16:46
  14.  */
  15.  
  16. public class SpammerComponent extends JFrame {
  17.     private JButton setButton;
  18.     private TextField status, delayField;
  19.     private JLabel delayLabel, selectedKeyLabel;
  20.     private boolean waitingForCode = false;
  21.     private int selectedKey = KeyEvent.VK_F5;
  22.     private long delay = 1;
  23.     private boolean started = false;
  24.  
  25.     public SpammerComponent() {
  26.  
  27.         try {
  28.             UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
  29.         } catch (ClassNotFoundException e) {
  30.             e.printStackTrace();
  31.         } catch (InstantiationException e) {
  32.             e.printStackTrace();
  33.         } catch (IllegalAccessException e) {
  34.             e.printStackTrace();
  35.         } catch (UnsupportedLookAndFeelException e) {
  36.             e.printStackTrace();
  37.         }
  38.  
  39.         setFocusable(true);
  40.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  41.         setTitle("Spammer");
  42.         setSize(400, 500);
  43.         setLocationRelativeTo(null);
  44.         setLayout(null);
  45.         addKeyListener(new KeyListener() {
  46.             @Override
  47.             public void keyTyped(KeyEvent e) {
  48.             }
  49.  
  50.             @Override
  51.             public void keyPressed(KeyEvent e) {
  52.                 int key = e.getKeyCode();
  53.  
  54.                 if (waitingForCode) {
  55.                     selectedKey = key;
  56.                     setButton.setEnabled(true);
  57.                     selectedKeyLabel.setText("Selected key: " + String.valueOf(selectedKey));
  58.                     waitingForCode = false;
  59.                     delayField.setFocusable(true);
  60.                     status.setText("Key has been set");
  61.                 } else if (!waitingForCode && selectedKey == key) {
  62.                     delay = Integer.valueOf(delayField.getText());
  63.                     if (!started) {
  64.                         status.setText("Started");
  65.                         started = true;
  66.  
  67.                         new Thread(new Runnable() {
  68.                             @Override
  69.                             public void run() {
  70.                                 while (true) {
  71.                                     if (!started) {
  72.                                         status.setText("Stopped");
  73.                                         return;
  74.                                     }
  75.  
  76.                                     try {
  77.                                         Thread.sleep(delay * 1000);
  78.                                     } catch (InterruptedException e1) {
  79.                                         e1.printStackTrace();
  80.                                     }
  81.  
  82.                                     status.setText("Looping, delay: " + delay + "s");
  83.  
  84.                                     if (!started) {
  85.                                         status.setText("Stopped");
  86.                                         return;
  87.                                     }
  88.                                 }
  89.                             }
  90.                         }).start();
  91.                     } else {
  92.                         status.setText("Stopped");
  93.                         started = false;
  94.                     }
  95.                 }
  96.             }
  97.  
  98.             @Override
  99.             public void keyReleased(KeyEvent e) {
  100.             }
  101.         });
  102.  
  103.         setButton = new JButton("Set key");
  104.         setButton.setBounds(0, 0, getWidth() - 16, 20);
  105.         setButton.setPreferredSize(new Dimension(100, 50));
  106.         setButton.addActionListener(new ActionListener() {
  107.             @Override
  108.             public void actionPerformed(ActionEvent e) {
  109.                 waitingForCode = true;
  110.                 setButton.setEnabled(false);
  111.                 delayField.setFocusable(false);
  112.                 status.setText("Waiting for input");
  113.             }
  114.         });
  115.         add(setButton);
  116.  
  117.         selectedKeyLabel = new JLabel("Selected key: " + Integer.toString(selectedKey));
  118.         selectedKeyLabel.setBounds(2, 20, 100, 20);
  119.         add(selectedKeyLabel);
  120.  
  121.         delayLabel = new JLabel("Delay:");
  122.         delayLabel.setBounds(2, 50, 100, 20);
  123.         add(delayLabel);
  124.  
  125.         delayField = new TextField("0");
  126.         delayField.setBounds(120, 50, 100, 20);
  127.         add(delayField);
  128.  
  129.         status = new TextField();
  130.         status.setEditable(false);
  131.         status.setFocusable(false);
  132.         status.setBounds(0, 445, getWidth() - 16, 20);
  133.         add(status);
  134.  
  135.         setVisible(true);
  136.     }
  137.  
  138.     public static void main(String[] args) {
  139.         new SpammerComponent();
  140.     }
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement