Hola.
No sé si entendí bién el problema, pero si te refieres a verificar que no tenga caracteres ingresados por el usuario, podrías hacer:
Código Delphi
[-]
function IsMaskEditEmpty(ME: TMaskEdit): Boolean;
var
tmp: string;
begin
tmp := ME.EditMask;
ME.EditMask := '';
Result := ME.Text = '';
ME.EditMask := tmp;
end;
Ejemplo de uso:
Código Delphi
[-]
...
begin
if IsMaskEditEmpty(MaskEdit1) then
ShowMessage('Vacío');
En cuanto al mensaje de error no sé que tratamiento das al contenido... Tal vez te sirva usar como filtros numéricos el caracter
9,que permite un dígito pero no lo requiere y como filtros alfanuméricos al caracter
a que permite un caracter pero no lo requiere.
Saludos