Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main;
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- /**
- * User: Zsolt
- * Date: 2013.04.26.
- * Time: 16:46
- */
- public class SpammerComponent extends JFrame {
- private JButton setButton;
- private TextField status, delayField;
- private JLabel delayLabel, selectedKeyLabel;
- private boolean waitingForCode = false;
- private int selectedKey = KeyEvent.VK_F5;
- private long delay = 1;
- private boolean started = false;
- public SpammerComponent() {
- try {
- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (InstantiationException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (UnsupportedLookAndFeelException e) {
- e.printStackTrace();
- }
- setFocusable(true);
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setTitle("Spammer");
- setSize(400, 500);
- setLocationRelativeTo(null);
- setLayout(null);
- addKeyListener(new KeyListener() {
- @Override
- public void keyTyped(KeyEvent e) {
- }
- @Override
- public void keyPressed(KeyEvent e) {
- int key = e.getKeyCode();
- if (waitingForCode) {
- selectedKey = key;
- setButton.setEnabled(true);
- selectedKeyLabel.setText("Selected key: " + String.valueOf(selectedKey));
- waitingForCode = false;
- delayField.setFocusable(true);
- status.setText("Key has been set");
- } else if (!waitingForCode && selectedKey == key) {
- delay = Integer.valueOf(delayField.getText());
- if (!started) {
- status.setText("Started");
- started = true;
- new Thread(new Runnable() {
- @Override
- public void run() {
- while (true) {
- if (!started) {
- status.setText("Stopped");
- return;
- }
- try {
- Thread.sleep(delay * 1000);
- } catch (InterruptedException e1) {
- e1.printStackTrace();
- }
- status.setText("Looping, delay: " + delay + "s");
- if (!started) {
- status.setText("Stopped");
- return;
- }
- }
- }
- }).start();
- } else {
- status.setText("Stopped");
- started = false;
- }
- }
- }
- @Override
- public void keyReleased(KeyEvent e) {
- }
- });
- setButton = new JButton("Set key");
- setButton.setBounds(0, 0, getWidth() - 16, 20);
- setButton.setPreferredSize(new Dimension(100, 50));
- setButton.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- waitingForCode = true;
- setButton.setEnabled(false);
- delayField.setFocusable(false);
- status.setText("Waiting for input");
- }
- });
- add(setButton);
- selectedKeyLabel = new JLabel("Selected key: " + Integer.toString(selectedKey));
- selectedKeyLabel.setBounds(2, 20, 100, 20);
- add(selectedKeyLabel);
- delayLabel = new JLabel("Delay:");
- delayLabel.setBounds(2, 50, 100, 20);
- add(delayLabel);
- delayField = new TextField("0");
- delayField.setBounds(120, 50, 100, 20);
- add(delayField);
- status = new TextField();
- status.setEditable(false);
- status.setFocusable(false);
- status.setBounds(0, 445, getWidth() - 16, 20);
- add(status);
- setVisible(true);
- }
- public static void main(String[] args) {
- new SpammerComponent();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement