Swing/Threads, changing the GUI

Hey all, I have a question related to the java swing class, and manipulating a GUI which is something that I have never done before. Basically I have a threaded Listener class which returns a status boolean. Related to that status, I have a Jlabel which is supposed to display green if the status is true, and red if the status is false, however it is not working correctly. Below is my code, and I would appreciate some help if anyone has a fix, or better way to do this... Thanks in advance
//Listener Class
public class Listener extends Thread{
     private boolean isGood = false;
     public Listener(//...) {
     public void run()
          // does stuff here that sets the isGood var
     public bool getIsGood()
          return this.isGood;
//GUI
public class Visualizer {
     private static Listener listener;
     public Visualizer(Listener listener){
          this.listener = listener;
          javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
     private static JFrame frame;
     private static JLabel status;
     public static void createAndShowGUI() {
//Create and set up the window.
frame = new JFrame("Window");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
status = new JLabel("Listener... ");
status.setOpaque(true);
status.setBackground(Color.RED);
//Display the window.
frame.pack();
frame.setVisible(true);
frame.setSize(new Dimension(204, 115));
frame.setContentPane(status);
listener.start();
while(true){
     boolean isGood = listener.getIsGood();
if(isGood){
status.setBackground(Color.GREEN);
else{
status.setBackground(Color.RED);
     try{
          Thread.sleep(1000);
     }catch(Exception E){
          E.printStackTrace();
I purposely left out some of the code because I wanted to make it simpler to follow. Essentially this is what is going on, and hopefully someone can point out why its not working and how to fix it. Thank you for reading this.

thanks for the advice Petes, I was looking for the code tag before but didnt see it. I have created an SSCCE, and I apologize for not making it earlier. Here is the code. The threads seem to be getting stuck, and the label doesnt alternate between red and green as it should. Let me know if you need anything else:
package simplified;
public class Main{
     public static void main(String[] args) {
          Listener theListener = new Listener();
          theListener.start();
          Visualizer theView = new Visualizer(theListener);
//Listener Class
public class Listener extends Thread{
     private boolean isGood = false;
     public Listener() {
     public void run(){
          if(this.isGood == true){
               this.isGood = false;
          else{
               this.isGood = true;
          try{
               this.sleep(1000);
          }catch(Exception e){
               e.printStackTrace();
     public boolean getIsGood(){
          return this.isGood;
import java.awt.*;
import javax.swing.*;
import java.awt.Dimension;
public class Visualizer {
     private static Listener listener;
     public Visualizer(Listener listener){
     this.listener = listener;
     javax.swing.SwingUtilities.invokeLater(new Runnable() {
          public void run() {
               createAndShowGUI();
     private static JFrame frame;
     private static JLabel status;
     public static void createAndShowGUI() {
          //Create and set up the window.
          frame = new JFrame("Window");
          frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          status = new JLabel("Listener... ");
          status.setOpaque(true);
          status.setBackground(Color.RED);
          //Display the window.
          frame.pack();
          frame.setVisible(true);
          frame.setSize(new Dimension(204, 115));
          frame.setContentPane(status);
          while(true){
               boolean isGood = listener.getIsGood();
               if(isGood){
                    status.setBackground(Color.GREEN);
               else{
                    status.setBackground(Color.RED);
               try{
                    Thread.sleep(1000);
               }catch(Exception E){
                    E.printStackTrace();
}

Similar Messages

  • Controlling a thread from the gui

    Hi ive written a small piece of code that demonstrates the problem im having:
    package Util;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    public class Monitor implements ActionListener {
         Mon mon = new Mon();
         public Monitor() {
              JFrame frame = new JFrame();
              JButton start = new JButton("Start");
              JButton pause = new JButton("Pause");
              pause.addActionListener(this);
              start.addActionListener(this);
              frame.setLayout(new FlowLayout());
              frame.add(start);
              frame.add(pause);
              frame.setVisible(true);
              frame.pack();
         public void actionPerformed(ActionEvent e) {
              if (e.getActionCommand() == "Start") {
                   mon.start();
              } else {
                   mon.pause();
         public static void main(String args[]) {
              new Monitor();
    class Mon extends Thread {
         public void run() {
              while (true) {
                   System.out.println("Running...");
                   try {
                        sleep(1000);
                   } catch (InterruptedException e) {
                        e.printStackTrace();
         public synchronized void pause() {
              try {
                   wait();
              } catch (InterruptedException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
    }I was wondering whether anyone could help me fix this or point out where im going wrong. Whenever the pause button is pressed, i want the thread to temporarily stop printing out "Running" until start is pressed again. At the mo, when i press the pause button, the gui locks up and the thread continues to print out running.
    Cheers.

    Thanks da.futt your advice helped me solve the problem, working example:
    package Util;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    public class Monitor implements ActionListener {
         Mon mon = new Mon();
         public Monitor() {
              JFrame frame = new JFrame();
              JButton start = new JButton("Start");
              JButton pause = new JButton("Pause");
              pause.addActionListener(this);
              start.addActionListener(this);
              frame.setLayout(new FlowLayout());
              frame.add(start);
              frame.add(pause);
              frame.setVisible(true);
              frame.pack();
         public void actionPerformed(ActionEvent e) {
              if (e.getActionCommand() == "Start") {
                   try {
                        mon.start();
                   } catch (Exception ex) {
                        mon.restart();
              } else {
                   mon.pause();
         public static void main(String args[]) {
              new Monitor();
    class Mon extends Thread {
         private boolean running = true;
         public void run() {
              while (true) {
                   if (running) {
                        System.out.println("Running...");
                        try {
                             sleep(1000);
                        } catch (InterruptedException e) {
                             e.printStackTrace();
                   } else {
                        synchronized (this) {
                             try {
                                  wait();
                             } catch (InterruptedException e) {
                                  // TODO Auto-generated catch block
                                  e.printStackTrace();
         public void restart() {
              running = true;
              synchronized (this) {
                   notify();
         public void pause() {
              running = false;
              synchronized (this) {
    }

  • How to change the GUI language to english

    After updating to SQL Modeler 3.1 I notice that the GUI language is german now, corresponding to the local settings of my computer to swiss-german.
    I share the same needas as expressed by Byte64 at FRIDAY, MARCH 13, 2009:
    While i appreciate the globalization efforts, i feel much better having certain programs with an English user interface for the simple reason that when i need to communicate with someone else who doesn't speak Italian, i can talk about menu entries, settings, button names using a commonly understood language and without having to guess what the original entry in English language could be.
    I have only to add, that the documention is also in english.
    Unfortunately I could not reproduce his workaround. So that old problem is again open at present with SQL Modeler 3.1.
    Can you please tell me how to change to software to use english menues communication.
    regards LPNO

    Thanks Dimitar, your hint helped and solved the problem.
    As I work with datamodeler64.exe I added the lines below into datamodeler64.conf
    AddVMOption -Duser.country=US
    AddVMOption -Duser.language=en
    after this I got english dialogs.
    Still I have gathered some more information that my be helpfull for others to solve the same problem:
    When adding the above two lines to datamodeler.conf, nothing happend. I still got german dialogs.
    a.) when starting datamodeler64.exe (according to normal expectations)
    b.) when starting datamodeler.exe (this is quite surprising)
    After all the problem is solved.

  • How to change the GUI title of a standard SAP screen

    Hi Gurus
    Could u pls help me on this
    I want to chnage the GUI title of a standard SAP screen without modifying the standard code.
    Thanks in advance
    Regards
    Swatantra

    Hi Vijay,
    Without a Modification, this will not be possible. If you're very particular about having your title, then is there any reason for avoiding modifications of SAP objects ?
    Regards,
    Anand Mandalika.

  • Is it possible to seperate an ActiveX control from the GUI thread?

    I have an activeX control (*ocx) that we use for communicating with external instruments. We are running into some difficulty because if the communication with the instrument is held up it can take up to 30 seconds to timeout and our LabVIEW user interface is frozen in the mean time. The VI that contains the control itself does not have to be visible and all the subVIs that use the ActiveX reference have been set to run in the "instrument" execution system thread, but the GUI still freezes. Its my theory that since the ActiveX control itself is in a container and part of a front panel, all refernces to it must be executed in the GUI thread. I just wanted to confirm that this was the case. Also if anyb
    ody would like to suggest any work arounds, feel free. The only idea I've had so far was to move all use of the ActiveX control to external code, which is not a very attractive solution for us.

    ....Also if anybody would like to suggest any work arounds,
    > feel free. The only idea I've had so far was to move all use of the
    > ActiveX control to external code, which is not a very attractive
    > solution for us.
    ActiveX controls are loaded into the UI thread and all interactions with
    them, property nodes, and invoke nodes, have to take place in the UI
    thread/main thread of LV. So, setting the VIs to run in the
    instrumentation or other execution systems, doesn't do much good since
    each call to the property or invoke will just have to switch back.
    What other choices do you have? If the control doesn't have a UI
    anyway, it would improve matters if the control were simply an
    automation server. The automation server can be set to run in a single
    thr
    eaded apartment, or a MT apartment. Changing it to MT means that you
    will have to deal with protecting the code from being called from
    different threads, and having those calls interleaving and competing
    with one another. When you change it to be MT, it can tie up other
    threads in LV and leave the UI thread alone. Another alternative is to
    change the ActiveX control to spin up its own thread and have a method
    that initiates, and one that reads the results or returns the status.
    Greg McKaskle

  • Why did you have to change the layout of Firefox?

    I would like to know why you have gone and changed the layout of Firefox?
    I am still on Fx 3.6.18 because quite frankly 5.0.1 looks horrible.
    Why did you have to change everything and move things around. Why couldn't you have given us the same layout as 3.6.18 but with these new upgrades.
    I will never download Fx5. 3.6 was perfect.
    Also how can I contact Fx without upgrading?

    Sorry the old Feedback page - Hendrix - used with older versions of Firefox was disabled near the end of 2010.
    In Firefox 4+ versions there's a Help > Submit Feedback... menu item which leads here: http://input.mozilla.com/en-US/feedback <br />
    But you can't submit feedback there with an older version of Firefox, currently you need Firefox 5.0 or higher.
    The decision to change the GUI was made by Mozilla collectively, not by a small group of developers or by one person. If you put your efforts toward customizing Firefox to suit your tastes, it would be a lot more productive than trying to find out who to blame and where to complain about the changes made to Firefox. Geez dude, it ain't the end of the world. It's only a web browser, which can be easily modified to make it look like you thing it should look.

  • To change the standard program

    Hi all,
    My reqmt is to change the GUI status and interface of the transaction MB26. MB26 uses the report PP_PICK_LIST to execute. The current GUI status and interface are,
    GUI Interface : SAPLCOWB
    GUI Status : STATUS_MMIM
    I have coded in the exit EXIT_SAPLCOWB_001 as,
    TYPES: reftype TYPE REF TO data.
    DATA: lty_ref TYPE reftype.
    DATA: ls_control TYPE cowb_ctrl,
          ls_prog TYPE progname.
    FIELD-SYMBOLS: <lfs_control> TYPE ANY,
                   <lfs_prog> TYPE ANY,
                   <lfs_prog1> TYPE ANY.
    GET REFERENCE OF ls_control INTO lty_ref.
    ASSIGN lty_ref->* TO <lfs_control>.
    CHECK sy-subrc = 0.
    ASSIGN ('(SAPLCOWB)G_COWB_CTRL') TO <lfs_control>.
    CHECK sy-subrc = 0.
    ls_control = <lfs_control>.
    ls_control-pf_status = 'ZSTATUS_MMIM'.
    <lfs_control> = ls_control.
    UNASSIGN <lfs_control>.
    to change the pf status of the transaction MB26.
    Now what I need to do is to change the standard program from SAPLCOWB to ZSAPLCOWB.
    For it is there anyway to change in the enhancement like the pf status or can we change in the standard program PP_PICK_LIST.
    I used sy-repid also, but its giving me a dump. So provide a solution other than that.

    Dear Sharan,
    You can use a System Field  SY-CPROG which gives you the Program Name.
    This Varibale can be used to change the Program Name.
    Try this Hope this will help you.
    But i think this you would using to only call the PF-STATUS of this New Z Program.
    Hope this helps.
    Encourage others in answering your queries by suitably rewarding them
    Thanks
    Venugopal

  • Need Help to update the labels in the GUI syncronously - Swing application

    Hello everyone,
    I need some help regarding a swing application. I am not able to syncronously update the counters and labels that display on my Swing GUI as the application runs in the background. But when the running of application is completed, then the labels on the GUI are getting updated, But I want update the labels and counters on the GUI syncronously as the code executes... below I am giving the format of the code I have written..............
    public class SwingApp extends JFrame{
            // here i have declared the label and component varibles like...
                      private JTextField startTextField;
           private JComboBox maxComboBox;
           private JTextField logTextField;
           private JTextField searchTextField;
           private JLabel imagesDownloaded1;
           private JLabel imagesDownloaded2;
           private JLabel imagesDidnotDownload1;
           private JLabel imagesDidnotDownload2;
                      private JButton startButton;
    //now in the constructer.............
    public Swing(){
    //I used gridbaglayout and wrote the code for the GUI to appear....
    startButton = new JButton("Start Downloading");
        startButton.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            try{
                 actionSearch();   //actionSearch will contain all the code and the function calls of my application...........
            }catch(Exception e1){
                 System.out.println(e1);
        constraints = new GridBagConstraints();
        constraints.gridwidth = GridBagConstraints.REMAINDER;
        constraints.insets = new Insets(5, 5, 5, 5);
        layout.setConstraints(startButton, constraints);
        searchPanel.add(startButton);
    //update is a function which initiates a thread which updates the GUI. this function will be called to pass the required variables in the application
    public void update(final int count_hits, final int counter_image_download1, final int didnot_download1) throws Exception{
         Thread thread = new Thread(new Runnable() {
             public void run() {
                  System.out.println("entered into thread");
                  System.out.println("the variable that has to be set is " + count_hits);
                  server_hits_count.repaint(count_hits);
                  server_hits_count.setText( " "+ Integer.toString(count_hits));
                  imagesDownloaded2.setText(" " + Integer.toString(counter_image_download1));
                  imagesDidnotDownload2.setText(" " + Integer.toString(didnot_download1));
                  repaint();
         //this.update(count_hits);
         thread.start();
    //Now in main............................
    public static void main(String[] args){
    Swing s = new Swing();
    s.setVisible(true);
    }//end of main
    }//end of class SwingAbove I have given the skeleton code of my application........ Please tell me how to update the GUI syncronously...
    Please its a bit urgent...............
    Thank you very much in advance
    chaitanya

    First off, note that this question should have been posted in the Swing section.
    GUI events run in a separate thread (the AWT / Event Dispatch Thread) than your program.
    You should be invoking AWT/Swing events via SwingUtilities.invokeLater().
    If for whatever reason you want to have the program thread wait for the event to process
    you can use invokeAndWait().
    http://java.sun.com/javase/6/docs/api/javax/swing/SwingUtilities.html

  • How do you monitor a background thread and update the GUI

    Hello,
    I have a thread which makes its output available on PipedInputStreams. I should like to have other threads monitor the input streams and update a JTextArea embedded in a JScrollPane using the append() method.
    According to the Swing tutorial, the JTextArea must be updated on the Event Dispatch Thread. When I use SwingUtilities.invokeLater () to run my monitor threads, the component is not redrawn until the thread exits, so you don't see the progression. If I add a paint () method, the output is choppy and the scrollbar doesn't appear until the thread exits.
    Ironically, if I create and start new threads instead of using invokeLater(), I get the desired result.
    What is the correct architecture to accomplish my goal without violating Swing rules?
    Thanks,
    Brad
    Code follows:
    import java.lang.*;
    import java.io.*;
    import javax.swing.*;
    import javax.swing.text.*;
    import java.awt.*;
    import java.awt.event.*;
    public class SystemCommand implements Runnable
         private String[] command;
         private PipedOutputStream pipeout;
         private PipedOutputStream pipeerr;
         public SystemCommand ( String[] cmd )
              command = cmd;
              pipeout = null;
              pipeerr = null;
         public void run ()
              exec ();
         public void exec ()
              // --- Local class to redirect the process input stream to a piped output stream
              class OutputMonitor implements Runnable
                   InputStream is;
                   PipedOutputStream pout;
                   public OutputMonitor ( InputStream i, PipedOutputStream p )
                        is = i;
                        pout = p;
                   public void run ()
                        try
                             int inputChar;
                             for ( ;; )
                                  inputChar = is.read();
                                  if ( inputChar == -1 ) { break; }
                                  if ( pout == null )
                                       System.out.write ( inputChar );
                                  else
                                       pout.write ( inputChar );
                             if ( pout != null )
                                  pout.flush ();
                                  pout.close ();
                             else
                                  System.out.flush();
                        catch ( Exception e ) { e.printStackTrace (); }     
              try
                   Runtime r = Runtime.getRuntime ();
                   Process p = r.exec ( command );
                   OutputMonitor out = new OutputMonitor ( p.getInputStream (), pipeout );
                   OutputMonitor err = new OutputMonitor ( p.getErrorStream (), pipeerr );
                   Thread t1 = new Thread ( out );
                   Thread t2 = new Thread ( err );
                   t1.start ();
                   t2.start ();
                   //p.waitFor ();
              catch ( Exception e ) { e.printStackTrace (); }
         public PipedInputStream getInputStream () throws IOException
              pipeout = new PipedOutputStream ();
              return new PipedInputStream ( pipeout );
         public PipedInputStream getErrorStream () throws IOException
              pipeerr = new PipedOutputStream ();
              return new PipedInputStream ( pipeerr );
         public void execInThread ()
              Thread t = new Thread ( this );
              t.start ();
         public static JPanel getContentPane ( JTextArea ta )
              JPanel p = new JPanel ( new BorderLayout () );
              JPanel bottom = new JPanel ( new FlowLayout () );
              JButton button = new JButton ( "Exit" );
              button.addActionListener ( new ActionListener ( )
                                       public void actionPerformed ( ActionEvent e )
                                            System.exit ( 0 );
              bottom.add ( button );
              p.add ( new JScrollPane ( ta ), BorderLayout.CENTER );
              p.add ( bottom, BorderLayout.SOUTH );
              p.setPreferredSize ( new Dimension ( 640,480 ) );
              return p;
         public static void main ( String[] argv )
              // --- Local class to run on the event dispatch thread to update the Swing GUI
              class GuiUpdate implements Runnable
                   private PipedInputStream pin;
                   private PipedInputStream perr;
                   private JTextArea outputArea;
                   GuiUpdate ( JTextArea textArea, PipedInputStream in )
                        pin = in;
                        outputArea = textArea;
                   public void run ()
                        try
                             // --- Reads whole file before displaying...takes too long
                             //outputArea.read ( new InputStreamReader ( pin ), null );
                             BufferedReader r = new BufferedReader ( new InputStreamReader ( pin ) );
                             String line;
                             for ( ;; )
                                  line = r.readLine ();
                                  if ( line == null ) { break; }
                                  outputArea.append ( line + "\n" );
                                  // outputArea.paint ( outputArea.getGraphics());
                        catch ( Exception e ) { e.printStackTrace (); }
              // --- Create and realize the GUI
              JFrame f = new JFrame ( "Output Capture" );
              f.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE );
              JTextArea textOutput = new JTextArea ();
              f.getContentPane().add ( getContentPane ( textOutput ) );
              f.pack();
              f.show ();
              // --- Start the command and capture the output in the scrollable text area
              try
                   // --- Create the command and setup the pipes
                   SystemCommand s = new SystemCommand ( argv );
                   PipedInputStream stdout_pipe = s.getInputStream ();
                   PipedInputStream stderr_pipe = s.getErrorStream ();
                   // --- Launch
                   s.execInThread ( );
                   //s.exec ();
                   // --- Watch the results
                   SwingUtilities.invokeLater ( new GuiUpdate ( textOutput, stdout_pipe ) );
                   SwingUtilities.invokeLater ( new GuiUpdate ( textOutput, stderr_pipe ) );
                   //Thread t1 = new Thread ( new GuiUpdate ( textOutput, stdout_pipe ) );
                   //Thread t2 = new Thread ( new GuiUpdate ( textOutput, stderr_pipe ) );
                   //t1.start ();
                   //t2.start ();
              catch ( Exception e ) { e.printStackTrace (); }
              

    Thanks for pointing out the SwingWorker class. I didn't use it directly, but the documentation gave me some ideas that helped.
    Instead of using invokeLater on the long-running pipe-reader object, I run it on a normal thread and let it consume the output from the background thread that is running the system command. Inside the reader thread I create a tiny Runnable object for each line that is read from the pipe, and queue that object with invokeLater (), then yield() the reader thread.
    Seems like a lot of runnable objects, but it works ok.

  • In this case, can I modify swing GUI out of swing thread?

    I know the Swing single thread rule and design (Swing is not thread safe).
    For time-consuming task, we are using other thread to do the task and
    we use SwingUtilities.invokeAndWait() or SwingUtilities.invokeLater (or SwingWorker) to update Swing GUI.
    My problem is, my time-consuming task is related to Swing GUI stuff
    (like set expanded state of a huge tree, walk through entire tree... etc), not the classic DB task.
    So my time-consuming Swing task must executed on Swing thread, but it will block the GUI responsivity.
    I solve this problem by show up a modal waiting dialog to ask user to wait and
    also allow user to cancel the task.
    Then I create an other thread (no event-dispatch thread) to do my Swing time-consuming tasks.
    Since the modal dialog (do nothing just allow user to cancel) is a thread spawn by
    Swing event-dispatch thread and block the Swing dispatch-thread until dialog close.
    So my thread can modify Swing GUI stuff safely since there are no any concurrent access problem.
    In this case, I broke the Swing's suggestion, modify Swing stuff out of Swing event-dispatch thread.
    But as I said, there are no concurrent access, so I am safe.
    Am I right? Are you agree? Do you have other better idea?
    Thanks for your help.

    If you drag your modal dialog around in front of the background UI, then there is concurrent access: paint requests in your main window as the foreground window moves around.

  • Updating the GUI from a background Thread: Platform.Runlater() Vs Tasks

    Hi Everyone,
    Hereby I would like to ask if anyone can enlighten me on the best practice for concurency with JAVAFX2. More precisely, if one has to update a Gui from a background Thread what should be the appropriate approach.
    I further explain my though:
    I have window with a text box in it and i receive some message on my network on the background, hence i want to update the scrolling textbox of my window with the incoming message. In that scenario what is the best appraoch.
    1- Shall i implement my my message receiver as thread in which i would then use a platform.RunLater() ?
    2- Or shall i use a Task ? In that case, which public property of the task shall take the message that i receive ? Are property of the task only those already defined, or any public property defined in subclass can be used to be binded in the graphical thread ?
    In general i would like to understand, what is the logic behind each method ?
    My understanding here, is that task property are only meant to update the gui with respect to the status of the task. However updating the Gui about information of change that have occured on the data model, requires Platform.RunLater to be used.
    Edited by: 987669 on Feb 12, 2013 12:12 PM

    Shall i implement my my message receiver as thread in which i would then use a platform.RunLater() ?Yes.
    Or shall i use a Task ?No.
    what is the logic behind each method?A general rule of thumb:
    a) If the operation is initiated by the client (e.g. fetch data from a server), use a Task for a one-off process (or a Service for a repeated process):
    - the extra facilities of a Task such as easier implementation of thread safety, work done and message properties, etc. are usually needed in this case.
    b) If the operation is initiated by the server (e.g. push data to the client), use Platform.runLater:
    - spin up a standard thread to listen for data (your network communication library will probably do this anyway) and to communicate results back to your UI.
    - likely you don't need the additional overhead and facilities of a Task in this case.
    Tasks and Platform.runLater are not mutually exclusive. For example if you want to update your GUI based on a partial result from an in-process task, then you can create the task and in the Task's call method, use a Platform.runLater to update the GUI as the task is executing. That's kind of a more advanced use-case and is documented in the Task documentation as "A Task Which Returns Partial Results" http://docs.oracle.com/javafx/2/api/javafx/concurrent/Task.html

  • I am not happy with the GUI changes in Firefox 4+ versions

    Please consider not making incomprehensible changes to the GUI. My "Home" icon has been in the same spot for 20 years. I had to revert to 3.6.4 to move it back.
    While I'm in rant mode, rejecting any suggestion from a user who isn't using the latest version suggests complete idiocy.
    Oh, and I'm still waiting for one of my first half dozen requests for my "confirmation" email to arrive. I had to register again to get here.
    On the bright side, FF support rivals that of the largest corporations in the US.
    ''Title of this thread was edited by a moderator due to the language used. See the [http://support.mozilla.com/kb/Forum+and+chat+rules+and+guidelines Rules & Guidelines] .''

    ''Please consider not making incomprehensible changes to the GUI. My "Home" icon has been in the same spot for 20 years.''
    You did not need to go back at all, Firefox is customizable, and you should have taken care of that part yourself. But you can do a lot more than what you mentioned -- here is how to make the current Firefox 5.0 look like Firefox 3.6.19 or Firefox 3.6.4 for that matter though you should not have gone back earlier than 3.6.19.
    You can make Firefox '''Firefox 5.0''' look like Firefox 3.6.19, see numbered items 1-10 in the following topic [http://dmcritchie.mvps.org/firefox/firefox-problems.htm#fx4interface Fix Firefox 4.0 toolbar user interface, problems (Make Firefox 5.0, or 4.0.1, look like 3.6)]. ''Whether or not you make changes, you should be aware of what has changed and what you have to do to use changed or missing features.''
    * http://dmcritchie.mvps.org/firefox/firefox-problems.htm#fx4interface

  • Is there a way to change the addresses used in an existing iMessage thread?

    This is kind of a multi-part question. Let me describe my scenario.
    I have many iMessage threads with other iPhone users where the "reply" addresses for one or both ends are the phone *numbers* instead of AppleID email addresses. (This could be due to a number of factors... either they had their "Start new conversations from" address set to their phone number, and/or they started a new conversation with me sending it to my phone number. How it *got* that way doesn't really matter). I want to be able to change the addresses of the conversation to AppleID's (so that I'll still get messages when I change SIM cards, among other reasons).
    With iOS 8's new ability to add/remove people from conversations, I thought I would be able to add the AppleID address and remove the phone number address, but there are two problems with that: 1) iOS 8 seems to only allow this for conversations which began as multi-person conversations, and 2) it doesn't seem to want to let you add addresses for people who are already recipients via another address (in other words, if Alice is already on the conversation via her phone number, I can't add her AppleID to the conversation). I guess I could remove the person first, and then re-add them with the other address... but I'd feel safer if I could add the next one before removing the first one.
    I know I could just tell the other person to delete our thread and start a new one, but I don't want to lose all of our dialogue and pictures (and I don't want to have to manually save it).
    So, the questions:
    Is there a way to change the address my counterparty is sending to when they make further replies to our conversation?
    Is there a way to change the address I send to when I make further replies to the conversation?
    Is there a way to change the default address to use when trying to send someone an iMessage? (What I'm after here is a way to craft my "contact" entry in people's phones so that, when they try to send a message to me and start typing my name, my preferred address comes up on top).
    As it looks like the only way to do this might be to use iOS 8's method of adding/removing recipients, is there a way of converting a two-person conversation into a multi-person one?

    I think I may have solved it, actually.  I find that if I switch the timecode to NDF in the source viewer, it seems to work.  I have tried it on three clips and they have sync'd without problems.  Hopefully this will continue to be the case.

  • Changing the label of a field in SAP GUI

    Hello SAP Guys,
    I would like to change the label of a field in SAP GUI.
    I already did it internally because for that field the Shor Text of the label changed:
    I went to SE11, and wrote down the appropriate data element, through Translation I changed the entries of SCRTEXT_L, SCRTEXT_M and SCRTEXT_S and activated this change after saving.
    It is very strange that after making sure that the
    Short Text of that field was changed, I went to trx BP and I could see that the label didn´t change.
    I´ll appreciate any help you can give me,
    Regards,
    Efrain

    Hi Efrain,
    Can you tell me in which screen did you make the screen.
    Moreover the changes are not reflected immediately.
    What you can try is to create a new record of the transaction in which you changed the label and save the recore. After this try to close the session and reopen the transaction and this should work.
    The reason is the label on the screen are not picked up from the data element everytime but from buffer. So when you create a record this updates the database table entry and can also refresh the buffer.
    I had the same problem in BP transaction and the above solution worked.
    Let me know if this helps.
    Jash.

  • How to change the size of the characters displayed on GUI screen?

    Hi All,
    My problem is : the characters displayed on GUI screen are smaller than other associates when we are in same condition.
    Can anyone tell me what i should do to change the size?
    Thank you very much.
    Regards,
    Fiona

    hi,
    click on the layout menu button at the end of standard tool bar.
    select visual settings. there u will get font size options.
    u can manage through this your font size.
    and this will effective with the first front end mode u start.
    layout menu button >> visual settings >>general tab>> font size
    hope it will help you.
    Edited by: Sachin Gupta on Jul 15, 2008 9:42 AM

Maybe you are looking for

  • Loading and parsing XML files

    I am currently working on an application in which I have a XML file that is 1.5 mb and has 1100 records that I need to load and parse. Loading takes less than a minute, but when I try to parse it with the DOM parser it's taking too much time. I am tr

  • Database Migration best option exp/expdp

    Hi Gurus, As a part of an EBS upgrade we need to migrate the DB in 10.2.0.4 from AIX to Linux .The target DB version would be 10.2.0.4 also. The database size is around 900 GB. I know I can use exp or expdp. I need to know as per the experience what

  • Sync Issues with 2.3 Update

    My AppleTV auto-updated to 2.3 the day before Thanksgiving and, in the process, wiped all my media. This was not the end of the world, though very irritating as we wanted to use the ATV to play music & show photos when we had guests over for the holi

  • How do i block an e-mail address

    i have a Samsung Intensity III (not a smart phone) i blocked the person regular phone # now they are e-mailing my device please help

  • Query to Excel problem

    Hi, I create a cfm to export data from my query, qOrds (which comes from my cfc). I actually have a button in flex which, when I click, needs to export data from my query to Excel. My flex button calls the following function : My function in Flex pub