Zitat von
Gravitar:
Dadurch erspare ich mit die vielen Try-Except-Blöcke.
Was soll das bringen?
Fehler sollten da behandelt werden wo sie passieren. An dieser Stelle befindet man sich im Kontext und kann eventuell den Fehler durch geeignete Massnahmen sogar noch korrigieren.
In einem globalen Exceptionhandler hast du keine Kontextinformationen (oder so gut wie keine). Daher auch deine Frage wie du den Focus auf das auslösende Feld setzen kannst. Behandelst du den Fehler z.B. im OnChange Ereignis des Feldes so hast du die genaue Information um welches Feld es sich handelte und kannst nach Fehlerbehandlung den Focus korrekt setzen.
Du kannst natürlich einen nicht unerheblichen Aufwand treiben und vor jeder Aktion Informationen über den aktuellen Kontext irgendwo speichern um diese dann im globalen Exceptionhandler zu lesen aber der Aufwand ist es nicht Wert! Du hast keine Vorteile von einem globalen Handler (höchstens um Exceptions abzufangen die irgendwie durch alle anderen Exceptionbehandlungen "durchgeschlüpft" sind)