Delphi-Quellcode:
while (Edit1.Text = '0') and (Edit1.Text= '0') do
memo1.Visible:=false;
Das ist das Problem. Sobald er die while-schleife betritt hängt er dort bis sich was an Edit1.text ändert. Diese änderung bekommt er aber garnicht mit weil er eben in der Schleife hängt und deshalb nicht auf messages reagiert.
Eine Lösungsmöglichkeit: Du machst das ganze mit einem Timer oder im OnKey*, OnChange-Ereigniss des Edits.
(Btw: Es gibt keine "if-schleifen"...)