When dealing with more complex logic, sometimes after settingText, it is indeed guaranteed that there is a value in it, but there is no guarantee that the page will be able to display the value! settext is just an assignment. Real changes to the interface still require CPU time to be executed through the refresh action. So, if you want to display the value directly, you have to open a separate thread to perform the assignment operation, so that it will be displayed directly.