Im делает простую небольшую программу, которая спамает текстовый файл. Но я застрял в проблеме. Мне нужно запустить цикл while (true) и кадр одновременно. Мне тоже нужно закрыть рамку. Но я попробовал нарезание резьбы и прочее, но я не могу понять это ни для чего, и им в тот момент, когда мне нужна помощь. Это то, что ив получилЗапустить рамку и петлю в одно и то же время?
ГЛАВНАЯ
public static void main(String[] args) throws IOException {
Frame frame = new Frame();
}
public static void Spam(){
try{
while(true){
String userName = names[ran.nextInt(names.length)]+ran.nextInt(360);
String rawMessage = messages[ran.nextInt(names.length)]+ran.nextInt(360);
String message=userName+": "+rawMessage;
CustomWriter writer = new CustomWriter();
CustomWriter.Write(message);
System.out.println(message);
Thread.sleep(waitTime);
}
}catch(Exception err){}
}
}
КАДР
public class Frame {
String file;
Frame()
{
final JFrame frame = new JFrame("SuperSpammer");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,100);
Container contentPane = frame.getContentPane();
contentPane.setLayout(new FlowLayout());
//Now lets get the stuff
JButton bPickFile = new JButton("FILE");
JButton bStart = new JButton("START");
final JTextField tfWaitTime = new JTextField(5);
final JLabel lSpaming = new JLabel("SPAMING");
final JFileChooser fc = new JFileChooser();
frame.add(bPickFile);
frame.add(tfWaitTime);
frame.add(bStart);
frame.setVisible(true);
//ActionListners
bPickFile.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
int returnVal = fc.showOpenDialog(fc);
if (returnVal == JFileChooser.APPROVE_OPTION) {
file = fc.getSelectedFile().toString();
}
}
});
bStart.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
if(file!=null){
frame.removeAll();
frame.add(lSpaming);
Main.Spam();
}
}
});
}
}
Так как я могу запустить цикл и кадр, в то же время, так что я могу закрыть кадр? Что я делаю неправильно и как я могу это исправить?