вариантов море (например)...
1) Делаешь 2 кнопки, одна из которых невидимая. После нажатия на кнопку, которая видна, скрываешь ее, а другую показвывешь. Разумеется, у каждой кнопки свои действия по OnClick
2) Делаешь что-то типа
Код:
var
f: boolean;
procedure TForm1.Button1Click(Sender: TObject);
begin
if f then
proc1
else
proc2;
f := not f;
end;
Одним словом, включай фантазию…