O SWT pode desencadear três tipos de excepções: IllegalArgumentException, SWTException e SWTError. As aplicações não devem apanhar nenhum outro tipo de excepção ou erro ao chamar o SWT.
Nota: Se o SWT devolver outra excepção além destas três, esta deverá ser considerada uma falha na implementação do SWT.
Onde possível for, as excepções são desencadeadas coerentemente ao longo das plataformas. No entanto, alguns erros são específicos de uma implementação SWT em determinada plataforma.
Os argumentos transmitidos em métodos de API de SWT são verificados relativamente ao estado e intervalo apropriados antes de ser efectuado qualquer outro trabalho. Será devolvida uma IllegalArgumentException quando se determinar que certo argumento não é válido.
O código que causar uma IllegalArgumentException numa plataforma causará a mesma excepção numa plataforma diferente.
A SWTException é devolvida quando ocorre um erro recuperável internamente no SWT. O código de erro e a mensagem de texto facultam mais descrição do problema.
O SWT permanece em estado estável conhecido depois de devolver a excepção. Por exemplo, esta excepção é devolvida quando uma chamada de SWT for efectuada de um módulo alheio à UI.
O SWTError é devolvido quando ocorre um erro irrecuperável dentro do SWT.
O SWT devolve este erro quando falha a chamada de uma plataforma subjacente, deixando o SWT em estado desconhecido ou quando se sabe que o SWT tem um erro irrecuperável como, por exemplo, ficar sem recursos gráficos de plataforma.
Uma vez ocorrido um erro de SWT, não há muito que uma aplicação possa fazer para corrigir o problema. Estes erros não devem surgir no decurso de funcionamento normal numa aplicação, mas as aplicações de alta fiabilidade devem mesmo assim apanhar e reportar os erros.