I have one Thread that is working as a queue for another two thread which process the data. I may call them as DataLoader and DataProcessors.
DataLoader fires events how the progress is going on, or if processing is finished, cancelled, paused, etc. Say I want to disable some buttons when event is fired.
First I fired events using invokeLater() from DataLoader, I noticed that nothing happens. After this event fired (I had disable button code in JButton action for testing) I pressed the button, disablation works on second pressing time wtf... Please explain me why?
I have got it working by calling invokeLater() in GUI code (Listener) and run the buttons disablation code inside it.
posted 3 years ago
Well this was not a thread issue (Swing issue), I posted too early. Sorry...
Issue solved, OptionPaneUI uninstalls and installs components after almost every property change. In where I wanted disable buttons.