You can't call any method that will update the UI from a background thread. 
Most UI toolkits have a similar restriction.

On Nov 18, 2011, at 5:03 PM, Jérôme Serré wrote:

> Correct. In fact in the run method (daemon) I add a “Record” in a pivot 
> arrayList and my Chart Class (and some others) listen this event :
> public void itemInserted(List<T> list, int index) {
>             “Update ChartData”
> }
> Ok, I think, I cannot use the event ?
> Jérôme Serré
> ____________________________
> Manage your cellar
> http://www.macave.eu
>  
>  
> De : Greg Brown [mailto:[email protected]] 
> Envoyé : vendredi 18 novembre 2011 21:17
> À : [email protected]
> Objet : Re: How to refresh a HighLowChartView
>  
> I assume you have an implementation of Runnable that performs the background 
> action of your thread, correct? When the thread's run() method completes, you 
> need to call ApplicationContext#queueCallback() with a new Runnable that 
> updates your UI.
>  
>  
> On Nov 18, 2011, at 2:59 PM, Jérôme Serré wrote:
> 
> 
> I’m really sorry but i don’t understand.
>  
> public class Test implements Application {
> **** some components ***
> final Thread t = ExtractProcess.getProcess(resolution, data, chart);
> ApplicationContext.queueCallback(t).run();
>  
>  
> The thread is running but none graphics elements are visible on ihm !
>  
> Jérôme Serré
> ____________________________
> Manage your cellar
> http://www.macave.eu
>  
>  
> De : Greg Brown [mailto:[email protected]] 
> Envoyé : vendredi 18 novembre 2011 19:29
> À : [email protected]
> Objet : Re: How to refresh a HighLowChartView
>  
> I tested without thread and it works, I use Thread not TaskAdapter or 
> ApplicationContext#queueCallback()
> May I keep Thread and use  ApplicationContext#queueCallback()
>  
> Yes.
> 
> 
> 
> And How to use it ?
>  
> Just put the code you want to run on the UI thread in the run() method (same 
> as SwingUtilities#invokeLater() in Swing).
>  
>  
>  
>  

Reply via email to