Bonjour tout le monde,
je n'arrive pas malgrès les tutoriels à rafraichir le JTextArea d'une JFrame depuis mon Thread principale, j'ai compris que ce que je fais ne peut pas marcher mais je ne comprends pas comment je peux faire pour que ca fonctionne
donc si quelqu'un pourrait m'expliquer ce que je dois faire un peu plus precisement ce serait sympa
voici le code de l'app qui est censé envoyé les données
/**
public class iRc1311
{
public static void main(String[] args)
{
...
StatusWindow statusWindow = new StatusWindow();
statusWindow.main(null);
IrcProtocolThread socketTest= new IrcProtocolThread(profile);
socketTest.start();
Thread lol = new Thread();
lol.start();
//boucle infini
while(socketTest.isAlive())
{
String in1 = socketTest.getIrcInput();
if(in1 != null)
{
//statusWindow.setJTextArea1(in);
System.out.println(in1);
}
String echo = socketTest.getIrcEcho();
if(echo != null)
{
//statusWindow.setJTextArea1(echo);
System.out.println(echo);
}
try
{
Thread.sleep(10);
}
catch(InterruptedException ex)
{
}
//socketTest.stopIrcProtocolThread();
}
}
}
et voici celui de la frame
/*
public class StatusWindow extends javax.swing.JFrame {
public StatusWindow() {
initComponents();
private void initComponents() {
jTextField1 = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
...
pack();
}
private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt)
setJTextArea1(jTextField1.getText());
jTextField1.setText(null);
}
public void setJTextArea1(String text)
{
jTextArea1.append(text + "\n");
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new StatusWindow().setVisible(true);
}
});
}
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextField jTextField1;
}
Partager