Advertisement
Guest User

setText in JTextFields eines anderen Threads?

a guest
Oct 28th, 2016
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.11 KB | None | 0 0
  1. // HauptKlasse
  2.  
  3. public class MainClass extends JFrame
  4. {
  5.     private JTextField textField;
  6.     private static Thread t;
  7.    
  8.     public boolean isRunning()
  9.     {
  10.         return isRunning;
  11.     }
  12.    
  13.     public void showMessage(String message)
  14.     {
  15.         textField.setText(message);
  16.     }
  17.    
  18.     public MainClass(boolean runConstructor)
  19.     {
  20.         if (runConstructor)
  21.         {
  22.             JPanel panel = new JPanel();
  23.            
  24.             textField = new JTextField("");
  25.             panel.add(textField);
  26.            
  27.             setContentPane(panel);
  28.         }
  29.     }
  30.    
  31.     public static void main(String[] args)
  32.     {
  33.         MainClass frame = new MainClass(true);
  34.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  35.         frame.setSize(500, 500);
  36.         frame.setVisible(true);
  37.        
  38.         t = new Thread(new Concurrent());
  39.         t.start(); 
  40.     }
  41. }
  42.  
  43. // Nebenläufiger Programmteil
  44.  
  45. public class Concurrent implements Runnable
  46. {
  47.     public void run()
  48.     {
  49.         try
  50.         {
  51.             MainClass clientObject = new MainClass(false);
  52.            
  53.             int i = 0;
  54.            
  55.             while(clientObject.isRunning())
  56.             {
  57.                 clientObject.showMessage(String.valueOf(i));
  58.                 Thread.sleep(1000);
  59.                 i++;
  60.             }
  61.            
  62.         } catch (Exception ex) {ex.printStackTrace();}
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement