I've fixed it by calling fry_Refresh() before manually changing screens. It seems that the gui was catching a click on the panel behind my button, then when switching screens the event was somehow stuck in the queue and no new events on the next screen could be caught.
FryGUI
BlitzMax Forums/BlitzMax Programming/FryGUIThe Forum Archive is locked. These are the original blitzbasic.com forums, kept so their posts can still be read and searched. No new topics, replies or edits can be made here. To join the conversation, head over to the Blitz3D+ forums.