Ich erwäge, QTextEdit als Konsolen-ähnliches IO-Element (für serielle Daten) zu verwenden. Das Problem bei diesem Ansatz besteht darin, dass (Benutzer-) Eingabe und (Kommunikations-) Ausgabe gemischt sind und sie möglicherweise nicht synchron sind.QTextEdit für Eingang und Ausgang
Um neue Benutzereingaben zu erkennen, könnte es möglich sein, plainText
bei bestimmten Eingabeereignissen zu speichern und zu vergleichen, z. wenn Enter/Return gedrückt wird.
Ein anderer Ansatz könnte darin bestehen, QTextEdit als Ansicht nur für separat verwaltete Eingabe- und Ausgabepuffer zu verwenden. Dies könnte auch das Problem potentiell asynchroner Daten vereinfachen (das Gerät sendet Zeichen, während der Benutzer tippt, in meinem Fall sehr unwahrscheinlich). Aber auch das Zusammenführen der beiden "Streams" durch den Zeitstempel mit einem Zeichen birgt ein Konfliktpotenzial.
Gibt es eine (einfache) Lösung oder sollte ich einfach separate und völlig unabhängige Eingabe-/Ausgabebereiche verwenden?