Guten Tag!
Ich bin eher neu bei Java. Was ich möchte, ist diese zwei erstellten Klassen entweder "verbinden" also zusammenfügen, oder aber wissen wie ich den "rate" Wert (Klasse autoclick) innerhalb bzw. von der Klasse JFrame1 aus verändern, weitergeben kann.
Was ich auch noch nicht hinbekommen habe, ist dass das zusammenspiel zwischen Eingabe in Textfeld und betätigen des Buttons funktioniert.
Ich möchte eigentlich, dass ich den Wert ("rate") ins Textfeld eingeben kann und mit dem Button OK diesen Wert bestätigen bzw. den eingegebenen Wert dann als neuer "rate" Wert gilt.
Ich hoffe irgendwie ist es verständlich
Wäre toll wenn mir jemand weiterhelfen könnte!
Edit: Autoclicker funktioniert als separate Klasse :]
Anbei Quellcode:
Ich bin mir ziemlich sicher bei den ActionListener fehlt noch ziemlich Code
Ich bin eher neu bei Java. Was ich möchte, ist diese zwei erstellten Klassen entweder "verbinden" also zusammenfügen, oder aber wissen wie ich den "rate" Wert (Klasse autoclick) innerhalb bzw. von der Klasse JFrame1 aus verändern, weitergeben kann.
Was ich auch noch nicht hinbekommen habe, ist dass das zusammenspiel zwischen Eingabe in Textfeld und betätigen des Buttons funktioniert.
Ich möchte eigentlich, dass ich den Wert ("rate") ins Textfeld eingeben kann und mit dem Button OK diesen Wert bestätigen bzw. den eingegebenen Wert dann als neuer "rate" Wert gilt.
Ich hoffe irgendwie ist es verständlich
Wäre toll wenn mir jemand weiterhelfen könnte!
Edit: Autoclicker funktioniert als separate Klasse :]
Anbei Quellcode:
Java:
//Autoclick Klasse
package autoclicker;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class autoclick {
public static int rate = 3000;
public static void main(String[] args) {
while (rate == 0) {
try {
System.out.println("Speed of the auto-clicker (in miliseconds):");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try {
rate = Integer.parseInt(in.readLine());
if (rate < 500) {
rate = 0;
System.out.println("Must be at least 500 miliseconds.");
}
} catch (NumberFormatException ex) {
System.out.println("Error - please try again.");
}
} catch (IOException e) {}
}
try {
Robot robot = new Robot();
while (true) {
try {
Thread.sleep(rate);
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
} catch (InterruptedException ex) {}
}
} catch (AWTException e) {}
}
}
Ich bin mir ziemlich sicher bei den ActionListener fehlt noch ziemlich Code
Java:
//Das Fenster mit Textfeld und Button
package autoclicker;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.awt.FlowLayout;
import javax.swing.JLabel;
import java.awt.Font;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class JFrame1 extends JFrame {
private JPanel contentPane;
private JTextField txtSetSpeed;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
JFrame1 frame = new JFrame1();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public JFrame1() {
setTitle("AutoClicker");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 296, 222);
contentPane = new JPanel();
contentPane.setBackground(Color.white);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
txtSetSpeed = new JTextField();
txtSetSpeed.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
txtSetSpeed.setBounds(113, 77, 52, 20);
contentPane.add(txtSetSpeed);
txtSetSpeed.setColumns(10);
JButton btnOk = new JButton("OK");
btnOk.setBounds(97, 125, 80, 23);
contentPane.add(btnOk);
JLabel lblClickSpeed = new JLabel("Set Click speed (ms)");
lblClickSpeed.setFont(new Font("Arial Rounded MT Bold", Font.PLAIN, 14));
lblClickSpeed.setBounds(68, 21, 140, 46);
contentPane.add(lblClickSpeed);
}
}
Zuletzt bearbeitet: