I am using this method, creating a separate hidden window per menu, switching the menus on-the-fly, and then restoring the original menus in the CloseProgram() function to avoid errors. I think this is just as good as any awkward commands that might be added to handle this.