- java.lang.Object
-
- javax.accessibility.AccessibleContext
-
- java.awt.Component.AccessibleAWTComponent
-
- java.awt.Container.AccessibleAWTContainer
-
- javax.swing.JComponent.AccessibleJComponent
-
- javax.swing.text.JTextComponent.AccessibleJTextComponent
-
- All Implemented Interfaces:
- Serializable, EventListener, AccessibleAction, AccessibleComponent, AccessibleEditableText, AccessibleExtendedComponent, AccessibleExtendedText, AccessibleText, CaretListener, DocumentListener
- Direct Known Subclasses:
- JEditorPane.AccessibleJEditorPane, JTextArea.AccessibleJTextArea, JTextField.AccessibleJTextField
- Enclosing class:
- JTextComponent
public class JTextComponent.AccessibleJTextComponent extends JComponent.AccessibleJComponent implements AccessibleText, CaretListener, DocumentListener, AccessibleAction, AccessibleEditableText, AccessibleExtendedText
This class implements accessibility support for theJTextComponent
class. It provides an implementation of the Java Accessibility API appropriate to menu user-interface elements.Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the
java.beans
package. Please seeXMLEncoder
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JComponent.AccessibleJComponent
JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler
-
Nested classes/interfaces inherited from class java.awt.Component.AccessibleAWTComponent
Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler
-
-
Field Summary
-
Fields inherited from class javax.swing.JComponent.AccessibleJComponent
accessibleFocusHandler
-
Fields inherited from class java.awt.Container.AccessibleAWTContainer
accessibleContainerHandler
-
Fields inherited from class java.awt.Component.AccessibleAWTComponent
accessibleAWTComponentHandler, accessibleAWTFocusHandler
-
Fields inherited from class javax.accessibility.AccessibleContext
ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_COMPONENT_BOUNDS_CHANGED, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, ACCESSIBLE_INVALIDATE_CHILDREN, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TABLE_CAPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED, ACCESSIBLE_TABLE_MODEL_CHANGED, ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_ROW_HEADER_CHANGED, ACCESSIBLE_TABLE_SUMMARY_CHANGED, ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent
-
Fields inherited from interface javax.accessibility.AccessibleAction
CLICK, DECREMENT, INCREMENT, TOGGLE_EXPAND, TOGGLE_POPUP
-
Fields inherited from interface javax.accessibility.AccessibleExtendedText
ATTRIBUTE_RUN, LINE
-
-
Constructor Summary
Constructors Constructor and Description JTextComponent.AccessibleJTextComponent()
Constructs an AccessibleJTextComponent.
-
Method Summary
Methods Modifier and Type Method and Description void
caretUpdate(CaretEvent e)
Handles caret updates (fire appropriate property change event, which are AccessibleContext.ACCESSIBLE_CARET_PROPERTY and AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY).void
changedUpdate(DocumentEvent e)
Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).void
cut(int startIndex, int endIndex)
Cuts the text between two indices into the system clipboard.void
delete(int startIndex, int endIndex)
Deletes the text between two indicesboolean
doAccessibleAction(int i)
Performs the specified Action on the objectAccessibleAction
getAccessibleAction()
Gets the AccessibleAction associated with this object that supports one or more actions.int
getAccessibleActionCount()
Returns the number of accessible actions available in this object If there are more than one, the first one is considered the "default" action of the object.String
getAccessibleActionDescription(int i)
Returns a description of the specified action of the object.AccessibleEditableText
getAccessibleEditableText()
Returns the AccessibleEditableText interface for this text component.AccessibleRole
getAccessibleRole()
Gets the role of this object.AccessibleStateSet
getAccessibleStateSet()
Gets the state set of the JTextComponent.AccessibleText
getAccessibleText()
Get the AccessibleText associated with this object.String
getAfterIndex(int part, int index)
Returns the String after a given index.String
getAtIndex(int part, int index)
Returns the String at a given index.String
getBeforeIndex(int part, int index)
Returns the String before a given index.int
getCaretPosition()
Returns the zero-based offset of the caret.AttributeSet
getCharacterAttribute(int i)
Returns the AttributeSet for a given character (at a given index).Rectangle
getCharacterBounds(int i)
Determines the bounding box of the character at the given index into the string.int
getCharCount()
Returns the number of characters (valid indices)int
getIndexAtPoint(Point p)
Given a point in local coordinates, return the zero-based index of the character under that Point.String
getSelectedText()
Returns the portion of the text that is selected.int
getSelectionEnd()
Returns the end offset within the selected text.int
getSelectionStart()
Returns the start offset within the selected text.Rectangle
getTextBounds(int startIndex, int endIndex)
Returns theRectangle
enclosing the text between two indicies.String
getTextRange(int startIndex, int endIndex)
Returns the text string between two indices.AccessibleTextSequence
getTextSequenceAfter(int part, int index)
Returns theAccessibleTextSequence
after a givenindex
.AccessibleTextSequence
getTextSequenceAt(int part, int index)
Returns theAccessibleTextSequence
at a givenindex
.AccessibleTextSequence
getTextSequenceBefore(int part, int index)
Returns theAccessibleTextSequence
before a givenindex
.void
insertTextAtIndex(int index, String s)
Inserts the specified string at the given indexvoid
insertUpdate(DocumentEvent e)
Handles document insert (fire appropriate property change event which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).void
paste(int startIndex)
Pastes the text from the system clipboard into the text starting at the specified index.void
removeUpdate(DocumentEvent e)
Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).void
replaceText(int startIndex, int endIndex, String s)
Replaces the text between two indices with the specified string.void
selectText(int startIndex, int endIndex)
Selects the text between two indices.void
setAttributes(int startIndex, int endIndex, AttributeSet as)
Sets attributes for the text between two indices.void
setTextContents(String s)
Sets the text contents to the specified string.-
Methods inherited from class javax.swing.JComponent.AccessibleJComponent
addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener
-
Methods inherited from class java.awt.Container.AccessibleAWTContainer
getAccessibleAt
-
Methods inherited from class java.awt.Component.AccessibleAWTComponent
addFocusListener, contains, getAccessibleComponent, getAccessibleIndexInParent, getAccessibleParent, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible
-
Methods inherited from class javax.accessibility.AccessibleContext
firePropertyChange, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javax.accessibility.AccessibleComponent
addFocusListener, contains, getAccessibleAt, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible
-
-
-
-
Constructor Detail
-
JTextComponent.AccessibleJTextComponent
public JTextComponent.AccessibleJTextComponent()
Constructs an AccessibleJTextComponent. Adds a listener to track caret change.
-
-
Method Detail
-
caretUpdate
public void caretUpdate(CaretEvent e)
Handles caret updates (fire appropriate property change event, which are AccessibleContext.ACCESSIBLE_CARET_PROPERTY and AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY). This keeps track of the dot position internally. When the caret moves, the internal position is updated after firing the event.- Specified by:
caretUpdate
in interfaceCaretListener
- Parameters:
e
- the CaretEvent
-
insertUpdate
public void insertUpdate(DocumentEvent e)
Handles document insert (fire appropriate property change event which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.- Specified by:
insertUpdate
in interfaceDocumentListener
- Parameters:
e
- the DocumentEvent
-
removeUpdate
public void removeUpdate(DocumentEvent e)
Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.- Specified by:
removeUpdate
in interfaceDocumentListener
- Parameters:
e
- the DocumentEvent
-
changedUpdate
public void changedUpdate(DocumentEvent e)
Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.- Specified by:
changedUpdate
in interfaceDocumentListener
- Parameters:
e
- the DocumentEvent
-
getAccessibleStateSet
public AccessibleStateSet getAccessibleStateSet()
Gets the state set of the JTextComponent. The AccessibleStateSet of an object is composed of a set of unique AccessibleState's. A change in the AccessibleStateSet of an object will cause a PropertyChangeEvent to be fired for the AccessibleContext.ACCESSIBLE_STATE_PROPERTY property.- Overrides:
getAccessibleStateSet
in classJComponent.AccessibleJComponent
- Returns:
- an instance of AccessibleStateSet containing the current state set of the object
- See Also:
AccessibleStateSet
,AccessibleState
,JComponent.AccessibleJComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)
-
getAccessibleRole
public AccessibleRole getAccessibleRole()
Gets the role of this object.- Overrides:
getAccessibleRole
in classJComponent.AccessibleJComponent
- Returns:
- an instance of AccessibleRole describing the role of the object (AccessibleRole.TEXT)
- See Also:
AccessibleRole
-
getAccessibleText
public AccessibleText getAccessibleText()
Get the AccessibleText associated with this object. In the implementation of the Java Accessibility API for this class, return this object, which is responsible for implementing the AccessibleText interface on behalf of itself.- Overrides:
getAccessibleText
in classAccessibleContext
- Returns:
- this object
- See Also:
AccessibleText
-
getIndexAtPoint
public int getIndexAtPoint(Point p)
Given a point in local coordinates, return the zero-based index of the character under that Point. If the point is invalid, this method returns -1.- Specified by:
getIndexAtPoint
in interfaceAccessibleText
- Parameters:
p
- the Point in local coordinates- Returns:
- the zero-based index of the character under Point p.
-
getCharacterBounds
public Rectangle getCharacterBounds(int i)
Determines the bounding box of the character at the given index into the string. The bounds are returned in local coordinates. If the index is invalid a null rectangle is returned. The screen coordinates returned are "unscrolled coordinates" if the JTextComponent is contained in a JScrollPane in which case the resulting rectangle should be composed with the parent coordinates. A good algorithm to use is:Accessible a: AccessibleText at = a.getAccessibleText(); AccessibleComponent ac = a.getAccessibleComponent(); Rectangle r = at.getCharacterBounds(); Point p = ac.getLocation(); r.x += p.x; r.y += p.y; Note: the JTextComponent must have a valid size (e.g. have been added to a parent container whose ancestor container is a valid top-level window) for this method to be able to return a meaningful (non-null) value.- Specified by:
getCharacterBounds
in interfaceAccessibleText
- Parameters:
i
- the index into the String >= 0- Returns:
- the screen coordinates of the character's bounding box
-
getCharCount
public int getCharCount()
Returns the number of characters (valid indices)- Specified by:
getCharCount
in interfaceAccessibleText
- Returns:
- the number of characters >= 0
-
getCaretPosition
public int getCaretPosition()
Returns the zero-based offset of the caret. Note: The character to the right of the caret will have the same index value as the offset (the caret is between two characters).- Specified by:
getCaretPosition
in interfaceAccessibleText
- Returns:
- the zero-based offset of the caret.
-
getCharacterAttribute
public AttributeSet getCharacterAttribute(int i)
Returns the AttributeSet for a given character (at a given index).- Specified by:
getCharacterAttribute
in interfaceAccessibleText
- Parameters:
i
- the zero-based index into the text- Returns:
- the AttributeSet of the character
-
getSelectionStart
public int getSelectionStart()
Returns the start offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same. Return 0 if the text is empty, or the caret position if no selection.- Specified by:
getSelectionStart
in interfaceAccessibleText
- Returns:
- the index into the text of the start of the selection >= 0
-
getSelectionEnd
public int getSelectionEnd()
Returns the end offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same. Return 0 if the text is empty, or the caret position if no selection.- Specified by:
getSelectionEnd
in interfaceAccessibleText
- Returns:
- the index into teh text of the end of the selection >= 0
-
getSelectedText
public String getSelectedText()
Returns the portion of the text that is selected.- Specified by:
getSelectedText
in interfaceAccessibleText
- Returns:
- the text, null if no selection
-
getAtIndex
public String getAtIndex(int part, int index)
Returns the String at a given index. Whitespace between words is treated as a word.- Specified by:
getAtIndex
in interfaceAccessibleText
- Parameters:
part
- the CHARACTER, WORD, or SENTENCE to retrieveindex
- an index within the text- Returns:
- the letter, word, or sentence.
-
getAfterIndex
public String getAfterIndex(int part, int index)
Returns the String after a given index. Whitespace between words is treated as a word.- Specified by:
getAfterIndex
in interfaceAccessibleText
- Parameters:
part
- the CHARACTER, WORD, or SENTENCE to retrieveindex
- an index within the text- Returns:
- the letter, word, or sentence.
-
getBeforeIndex
public String getBeforeIndex(int part, int index)
Returns the String before a given index. Whitespace between words is treated a word.- Specified by:
getBeforeIndex
in interfaceAccessibleText
- Parameters:
part
- the CHARACTER, WORD, or SENTENCE to retrieveindex
- an index within the text- Returns:
- the letter, word, or sentence.
-
getAccessibleEditableText
public AccessibleEditableText getAccessibleEditableText()
Returns the AccessibleEditableText interface for this text component.- Overrides:
getAccessibleEditableText
in classAccessibleContext
- Returns:
- the AccessibleEditableText interface
- Since:
- 1.4
- See Also:
AccessibleEditableText
-
setTextContents
public void setTextContents(String s)
Sets the text contents to the specified string.- Specified by:
setTextContents
in interfaceAccessibleEditableText
- Parameters:
s
- the string to set the text contents- Since:
- 1.4
-
insertTextAtIndex
public void insertTextAtIndex(int index, String s)
Inserts the specified string at the given index- Specified by:
insertTextAtIndex
in interfaceAccessibleEditableText
- Parameters:
index
- the index in the text where the string will be inserteds
- the string to insert in the text- Since:
- 1.4
-
getTextRange
public String getTextRange(int startIndex, int endIndex)
Returns the text string between two indices.- Specified by:
getTextRange
in interfaceAccessibleEditableText
- Specified by:
getTextRange
in interfaceAccessibleExtendedText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the text- Returns:
- the text string between the indices
- Since:
- 1.4
-
delete
public void delete(int startIndex, int endIndex)
Deletes the text between two indices- Specified by:
delete
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the text- Since:
- 1.4
-
cut
public void cut(int startIndex, int endIndex)
Cuts the text between two indices into the system clipboard.- Specified by:
cut
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the text- Since:
- 1.4
-
paste
public void paste(int startIndex)
Pastes the text from the system clipboard into the text starting at the specified index.- Specified by:
paste
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the text- Since:
- 1.4
-
replaceText
public void replaceText(int startIndex, int endIndex, String s)
Replaces the text between two indices with the specified string.- Specified by:
replaceText
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the texts
- the string to replace the text between two indices- Since:
- 1.4
-
selectText
public void selectText(int startIndex, int endIndex)
Selects the text between two indices.- Specified by:
selectText
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the text- Since:
- 1.4
-
setAttributes
public void setAttributes(int startIndex, int endIndex, AttributeSet as)
Sets attributes for the text between two indices.- Specified by:
setAttributes
in interfaceAccessibleEditableText
- Parameters:
startIndex
- the starting index in the textendIndex
- the ending index in the textas
- the attribute set- Since:
- 1.4
- See Also:
AttributeSet
-
getTextSequenceAt
public AccessibleTextSequence getTextSequenceAt(int part, int index)
Returns theAccessibleTextSequence
at a givenindex
.- Specified by:
getTextSequenceAt
in interfaceAccessibleExtendedText
- Parameters:
part
- theCHARACTER
,WORD
,SENTENCE
,LINE
orATTRIBUTE_RUN
to retrieveindex
- an index within the text- Returns:
- an
AccessibleTextSequence
specifying the text ifpart
andindex
are valid. Otherwise,null
is returned - Since:
- 1.6
- See Also:
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextSequenceAfter
public AccessibleTextSequence getTextSequenceAfter(int part, int index)
Returns theAccessibleTextSequence
after a givenindex
.- Specified by:
getTextSequenceAfter
in interfaceAccessibleExtendedText
- Parameters:
part
- theCHARACTER
,WORD
,SENTENCE
,LINE
orATTRIBUTE_RUN
to retrieveindex
- an index within the text- Returns:
- an
AccessibleTextSequence
specifying the text ifpart
andindex
are valid. Otherwise,null
is returned - Since:
- 1.6
- See Also:
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextSequenceBefore
public AccessibleTextSequence getTextSequenceBefore(int part, int index)
Returns theAccessibleTextSequence
before a givenindex
.- Specified by:
getTextSequenceBefore
in interfaceAccessibleExtendedText
- Parameters:
part
- theCHARACTER
,WORD
,SENTENCE
,LINE
orATTRIBUTE_RUN
to retrieveindex
- an index within the text- Returns:
- an
AccessibleTextSequence
specifying the text ifpart
andindex
are valid. Otherwise,null
is returned - Since:
- 1.6
- See Also:
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextBounds
public Rectangle getTextBounds(int startIndex, int endIndex)
Returns theRectangle
enclosing the text between two indicies.- Specified by:
getTextBounds
in interfaceAccessibleExtendedText
- Parameters:
startIndex
- the start index in the textendIndex
- the end index in the text- Returns:
- the bounding rectangle of the text if the indices are valid.
Otherwise,
null
is returned - Since:
- 1.6
-
getAccessibleAction
public AccessibleAction getAccessibleAction()
Description copied from class:AccessibleContext
Gets the AccessibleAction associated with this object that supports one or more actions.- Overrides:
getAccessibleAction
in classAccessibleContext
- Returns:
- AccessibleAction if supported by object; else return null
- See Also:
AccessibleAction
-
getAccessibleActionCount
public int getAccessibleActionCount()
Returns the number of accessible actions available in this object If there are more than one, the first one is considered the "default" action of the object.- Specified by:
getAccessibleActionCount
in interfaceAccessibleAction
- Returns:
- the zero-based number of Actions in this object
- Since:
- 1.4
-
getAccessibleActionDescription
public String getAccessibleActionDescription(int i)
Returns a description of the specified action of the object.- Specified by:
getAccessibleActionDescription
in interfaceAccessibleAction
- Parameters:
i
- zero-based index of the actions- Returns:
- a String description of the action
- Since:
- 1.4
- See Also:
getAccessibleActionCount()
-
doAccessibleAction
public boolean doAccessibleAction(int i)
Performs the specified Action on the object- Specified by:
doAccessibleAction
in interfaceAccessibleAction
- Parameters:
i
- zero-based index of actions- Returns:
- true if the action was performed; otherwise false.
- Since:
- 1.4
- See Also:
getAccessibleActionCount()
-
-
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 11/06/2005, zuletzt geändert 04/03/2020
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-rf-javax/swing/text/jtextcomponent.accessiblejtextcomponent.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.