Hallo Diplomand,
"Meine Frage ist: Gibt es eine direkte Lösung, ohne lokale oder globale Variable?"
Ja.
Um der nächsten Frage vorzugreifen:
Ich persönlich würde 1) die Start-/Stop-Buttons gegeneinander verriegeln oder 2) beide Funktionen auf einen (schaltenden, nicht latchenden) Button legen.
1) bei Programmstart kann der Benutzer nur den Start-Knopf betätigen. Wenn Dip gestartet, dann ist nur der Stop-Button enabled. So brauchst du nie eine globale Variable, um bei einem erneuten Start ers t den vorherigen Start abzubrechen!
2) Packt man beide Funktionen auf einen Button, erspart man sich das wechselseitige Enablen/Disablen der vorher 2 Buttons...
P.S.: