Hi Alan,
In 4.28 and before the answer is "no".
In 4.29 it's "not quite". In 4.29 if the button is marked as "Send new value to server" AND it has an URL, then both requests are triggered at the "same time". You can't rely on the button press arriving before the page request, although in most cases it almost certainly will. However remember that the server is multi-threaded, so you definitely can't rely on the button press being _handled_ before the page request.
One use for this is if you need to "count" the number of clicks on that button, even if the button points to the URL of another site.
Incidentally this approach can also be used (in 4.29 or later) for all "Display" Form fields, including images and URL links.
Clearly one use for this is Advertising - you're able to count the number of times a link, button or image, is clicked, without the target site needing to do anything on their side.
Another use for this is to track people "leaving" your site by clicking on an external link. Usually it's normal to open external links in another window (by setting the "target" of the link to '_blank') but you might prefer to link to the site in the same window AND do something internally (like log the user out).
Cheers
Bruce