Übergänge
- Aktualisiert2026-07-22
- 6 Minute(n) Lesezeit
Hier lernen Sie, wie Übergänge in PAgraph verwaltet werden.
Erstellen von Übergängen
Übergänge können nur im grafischen Bereich erstellt werden. Sie können nur zwischen zwei vorhandenen Elementen erstellt werden, da diese immer ein definiertes Quell- und Zielelement erfordern.
Sie haben folgende Optionen, um Übergänge zu erstellen:
- Erstellen Sie automatisch einen Übergang, wenn Sie ein neues Element erstellen, indem Sie es in den Diagrammbereich ziehen. Es wird automatisch ein Übergang zwischen Quell- und Zielelement erstellt.
- Erstellen Sie nachträglich Übergänge, indem Sie zwischen zwei vorhandenen Elementen im Diagrammbereich ziehen.
Alle in der Toolbox enthaltenen Elemente sind als Quell- oder Zielelement zulässig, mit Ausnahme der folgenden:
- Comment
- Do4Ever
- DoAtStateChange
Verschieben eines Übergangs
Ein Übergang muss immer ein Quell- und ein Zielelement enthalten. Daher können Sie einen Übergang nicht in den leeren Diagrammbereich ziehen.
Um einen Übergang zu verschieben, müssen Sie ihn im Diagrammbereich markieren. Anschließend können Sie die ausgewählten Start- oder Endpunkte des Übergangs in das gewünschte Quell- oder Zielelement ziehen. Der Übergang wird in dieses Element verschoben, wenn er als neuer Start- oder Endpunkt zulässig ist.
In der folgenden Abbildung wird links der Ausgangszustand geändert und rechts ist der Zielzustand.

Umbenennen eines Übergangs
Benennen Sie Übergänge in Ihren Diagrammen um, um die Namen im Code-, Explorer- und Diagrammbereich anzuzeigen.
Übergänge haben nach ihrer Erstellung keinen Namen. In der Codeansicht und im Explorer werden Übergänge mit dem Zustand beschriftet, zu dem der Übergang führt. Beispiel: zu state 2 (2). Namen für solche Übergänge werden im Diagrammbereich nicht angezeigt. Wenn Sie die Übergänge benennen, wird der Name in der Codeansicht, im Explorer und im Diagrammbereich angezeigt.
Sie haben folgende Optionen, um Übergänge umzubenennen:
- Wählen Sie den markierten Übergang im Diagrammbereich aus und drücken Sie <F2>.
- Wählen Sie im Diagrammbereich aus dem Kontextmenü die Option Rename aus.
In beiden Fällen wird die Anzeige des Übergangsnamens zu einem Eingabefeld. Sie können den neuen Namen im Eingabefeld eingeben.
Sie können den Namen zurücksetzen, so dass der Diagrammbereich nicht angezeigt wird. Gehen Sie zum Zurücksetzen des Namens wie folgt vor:
- Wechseln Sie in den Bearbeitungsmodus.
- Löschen Sie den Namen aus dem Eingabefeld.
Löschen von Übergängen
Sie haben folgende Optionen, um Übergänge zu löschen:
- Wählen Sie im Explorer oder Diagrammbereich den Übergang aus und drücken Sie <Entf>.
- Wählen Sie im Explorer oder Diagrammbereich aus dem Kontextmenü die Option Delete aus.
Übergänge mit und ohne Bedingung
Übergänge, die keinen Programmcode für die Bedingung enthalten, sind als Pfeile mit durchgehender Linie gekennzeichnet. Übergänge, die eine Bedingung enthalten, werden durch Pfeile mit gepunkteter Linie dargestellt.
| Bedingung | Anzeige im Diagramm | Anzeige im Explorer |
|---|---|---|
| Keine Bedingung |
![]() |
![]() |
| Mit Bedingung |
![]() |
![]() |
Der Programmcode für die Bedingung wird in den Codeeintrag für Übergänge in der Codeansicht eingegeben.
Abfolge von Übergängen
Die Abfolge von Übergängen gilt, wenn die Bedingungen von mindestens zwei Übergängen, die vom aktiven Zustand wegführen, gleichzeitig erfüllt sind.
Ein Übergang wird ausgeführt, wenn die Übergangsbedingung erfüllt ist oder wenn der Übergang keine Bedingung hat. Wenn der aktive Zustand zwei Übergänge mit einer erfüllten Bedingung gleichzeitig hat, ist die Reihenfolge der Übergänge im Explorer kritisch.
Beispiel 1

In diesem Beispiel hat Transition 1 keine Bedingung. Transition 2 hat eine Bedingung. Transition 2 wird erst nach Transition 1 geprüft. Außerdem wird Transition 1 immer ausgeführt. Daher wird Transition 2 nie ausgeführt.
Beispiel 2

In diesem Beispiel wird Transition 1 nach Transition 2 geprüft. Wenn die Bedingung für Transition 2 erfüllt ist, wird Transition 2 ausgeführt. Transition 1 wird nicht ausgeführt. Wenn die Bedingung für Transition 2 nicht erfüllt ist, wird Transition 1 ausgeführt.
Verwenden von Biegepunkten
Übergänge werden immer als gerade Linie zwischen Quell- und Zielelement erstellt. Durch das Einfügen von Biegepunkten können Sie die Anordnung und Position dieser Linien beeinflussen.
Einfügen von Biegepunkten
Öffnen Sie zum Einfügen von Biegepunkten am entsprechenden Übergang das Kontextmenü und wählen Sie daraus die Option Insert Point aus. Sie können diesen Vorgang beliebig oft wiederholen.
Positionieren von Biegepunkten
Bewegen Sie die Maus über den Biegepunkt, bis sich der Zeiger in einen Pfeil ändert, der in vier Richtungen zeigt. Greifen Sie den Biegepunkt mit der Maus und ziehen Sie ihn an die gewünschte Position.
Wenn eine Biegung genau bei 90° liegt, wird die Ecke abgerundet.
Entfernen eines Biegepunkts
Bewegen Sie zum Entfernen eines Biegepunkts die Maus im Diagrammbereich über diesen Biegepunkt, bis die Maus als Zeiger dargestellt wird. Öffnen Sie das Kontextmenü und wählen Sie Remove point aus.
Stopp
Ein Stopp bei einem Übergang bewirkt, dass der Nachfolgezustand erst im nächsten Aufrufzyklus des Zustandsautomaten eingegeben wird. Ohne diesen Stopp wird der nächste Zustand sofort aktiviert und der Programmcode im Initialisierungsteil ausgeführt.
Alle Übergänge werden per Standardeinstellung ohne Stopp erstellt. Wenn ein Stopp gewünscht wird, muss dieser explizit erstellt werden.
Sie können einen Stopp mit einer der folgenden Methoden erstellen:
- Ziehen Sie ein Stop-Element aus der Toolbox in den Diagrammbereich. In diesem Fall müssen Sie manuell die beiden Übergänge erstellen, die zum Stopp führen oder von diesem weggehen.
- Wählen Sie Stop aus dem Kontextmenü für einen vorhandenen Übergang aus.
Zustandsautomat mit AnyTransitions
AnyTransitions werden immer zu Beginn eines Zyklus geprüft, bevor der Code des aktuellen Zustands ausgeführt wird. Der Code des Exit-Teils eines Zustands wird ausgeführt, bevor zum AnyTransition gewechselt wird.
Beispiel
Nehmen Sie im Beispiel den Fall, dass State 1 zu Beginn eines neuen Zyklus aktiv ist. Außerdem ist die Bedingung von AnyTransition 1 erfüllt. Dann ergibt sich folgende Abfolge für die Codeausführung:
- exit-Teil von State 1
- activity-Teil von AnyTransition 1
- init-Teil von State 3
- cyclic-Teil von State 3
AnyTransitions werden einmal in jedem Zyklus geprüft und bei Bedarf ausgeführt. Wenn kein Stop zwischen zwei Zuständen definiert ist, werden die AnyTransitions vor dem Eintritt in den nächsten Zustand nicht erneut geprüft.
Verwandte Inhalte
- Code für Übergänge
Für jeden Übergang können Sie Code für die Übergangsbedingung und die mit dem Übergang verbundenen Aktivitäten schreiben.
- AnyTransition
AnyTransitions haben immer einen Zielzustand, zu dem die AnyTransitions führen. AnyTransitions haben nie einen Anfangszustand, von dem die AnyTransitions wegführen.



