Здесь
Код:
if (Edit1.Text <> '') or (Edit2.Text <> '') or (MaskEdit1.Text <> '') then
задано, что если Edit1.Text что-то содержит или Edit2, а ведь может и не содержать, вместо оператора or в данном варианте следует применить and, тогда условие отработает только если во всех трёх полях ввода чтонить будет набрано