Minor Update UI before Executing Script

MacOS 10.14.1
Xojo 2018 r4
My confusion/problem relates to a minor updating of the UI before executing a Shell script. This application is used only in the Mac environment, if that matters.
In Xojo, the user is asked with a open file dialog to chose a file on the computer. From the selection made, the absolute pathname is extracted. This pathname is passed as an argument to a shell script (Python).
The Python program churns away for a couple minutes on the chosen file, ultimately returning data to Xojo where it can be displayed and dealt with.
What I would like is a simple way to tell the user that they should be patient and a task is underway that will take a few minutes.
What I have tried is having a label on the Xojo window that is launching this whole process. My thought was that after the user selected a file, then I would update the label’s text property. After that, in the code, Xojo would pass the pathname to the Python script where it could do its job. There are no loops or “intensive” stuff in the few lines of code between having the user select the file and having the code launch the executing of the shell.
Immediately after the user has selected the file, the Xojo code tries to update the Window.

Self.lblInfo.Text = "Data sent to Python. Wait a couple minutes for completion."

The problem is that this never appears in a timely fashion. It only appears after the Shell script has completed its task. For what it is worth, explicitly asking for a refresh of the label does not change this.

Self.lblInfo.Text = "Data sent to Python. Wait a couple minutes for completion." Self.lblInfo.Refresh … … Dim pythonShell As New Shell pythonShell.Execute(PATH_PYTHON3, thePathname + SP + argument1)
I could throw up a MsgBox with the information about how the user has to be patient. If I do that, then the label shows up with its own text property giving the user the same warning.
That is fine in the sense that after dismissing the MsgBox, the warning remains visible.
I would prefer not doing this because it requires the user to use the mouse to dismiss the MsgBox which can get old.
I am asking if what I want is possible at all. Is there a way I can force Xojo to update the window’s label before it goes on to launching the shell script? The “interruption” imposed by launching the MsgBox window clearly is sufficient to get the label itself updated. Is there a less obtrusive way of “interrupting” Xojo so that task completes before Xojo calls the Shell.Execute command?

Add a Timer (in which you start the script) and a Property in your Window. Then pass the Path to the Property and start the (150ms) Timer.
This way you can delay the starting of the script and give the UI time to refresh.

BTW: I would recommend to use the Native Path because the absolute Path is obsolete.

You could use an asynchronous shell and continue execution of your code when you receive the completion event.