ich beschäftige mich noch nicht allzulang mit Qt und schreibe gerade zu Übungszwecken einen kleinen Texteditor. Ich habe mir eine eigene Klasse namens TextEdit von QTextEdit abgeleitet, um z.B. eine open-Methode direkt im Textfeld zu implementieren, was soweit auch funktioniert.
Das Problem liegt beim Speichern: Jedes Mal wenn ich - egal ob zum Setzen per setPlainText() oder zum Auslesen per toPlainText() - auf den plainText zugreife.
Die save-Methode, bei der es hapert, ist recht kurz und sieht folgendermaßen aus:
Code: Alles auswählen
void TextEdit::save(const QString& filePath)
{
QFile file(filePath);
QString editContent = QTextEdit::toPlainText();
// an dieser Stelle bricht die Ausführung des Programmes ab
// und er sendet mir ein "Segmentation Fault"
file.write(editContent.toAscii());
}
Code: Alles auswählen
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f1a9aded6f0 (LWP 6730)]
0x00007f1a9a46ceb4 in QTextDocument::isUndoRedoEnabled ()
from /usr/lib/libQtGui.so.4
Ich wäre sehr dankbar, wenn mir jemand weiterhelfen könnte. Ich bastle schon seit zwei Tagen an dem Problem, aber es will sich einfach nicht lösen lassen.
MfG Godless