Complain about something that was entered into a field on the notebook.
  
  Made this into a seporate function, because it was used more than once.
  
  displayError(self, section, option, message)
  Arguments are like those given to ConfManager.get, with the additional message as text.
  
  Shows message as an alert box, and moves focus back to the control, jumping pages in the notebook if necessary.

def displayError(self, section, option, message):
  """
  Complain about something that was entered into a field on the notebook.
  
  Made this into a seporate function, because it was used more than once.
  
  displayError(self, section, option, message)
  Arguments are like those given to ConfManager.get, with the additional message as text.
  
  Shows message as an alert box, and moves focus back to the control, jumping pages in the notebook if necessary.
  """
  self.notebook.SetSelection(self.config.sections().index(section)) # Jump pages, using the position of section to find the relevant page number
  self._controls[section][option].SetFocus() # Set focus on the offending control
  wx.MessageBox(message, 'Error')