if A then ... 是判断表达式的返回值是否为真/true, 如果是,就执行后面的语句(组)等,而button1.click 是调用按钮 Button1 的OnClick事件,通常是执行 Button1Click,是一个过程,无返回值,所以你的语句出错。
如果要实现你的目的,可以考虑这样:
把你原先写在 Button1Click 里的代码写成一个函数如MyFunction,返回值为布尔型,若达到目的就返回true, 否则返回 false;在Button1Click 里调用这个函数,据以判断。
看来楼主的基础似乎很不扎实,应好好学习一下 Delphi/Pascal 基础知识。一般人是不会写类似 if
button1.click then 的代码来的。