Seite 1 von 1
QTextEdit -> kein Goto Line?
Verfasst: 7. April 2006 12:20
von Alci
Hallo,
ich habe vergeblich nach einer Goto-Line-Funktion für QTextEdit gesucht.
Damit soll man, wie es der Name schon sagt, zu einer bestimmten Zeile springen können.
Kennt jemand von euch solch eine Funktion, oder (wenn es keine gibt) weiß jemand von euch wie man es "händisch" machen könnte?
MfG, Alci.
Verfasst: 10. April 2006 20:26
von Tarek
Code: Alles auswählen
QTextCursor cursor=TxtEdit->textCursor();
cursor.setPosition(...);
TxtEdit->setTextCursor(cursor);
Laut Docu würde TxtEdit->textCursor().setPosition(...) nicht funktionieren.
Verfasst: 11. April 2006 08:31
von Alci
Das habe ich auch schon ausprobiert. Anscheinend gibt's da wirklich nichts. Also was die Klasse QTextEdit angeht, da sollte IMO noch viel verbessert werden (unter anderem die schlechte Performance!).
Verfasst: 11. April 2006 18:56
von FlorianBecker
Was meinst du genau mit Performance?
Welche Qt Version benutzt du denn?
Hast du mal geschaut, ob es vielleicht ein Qt Bug sein könnte? Denn normalerweise gehen die Funktionen von Qt schon, wenn man diese richtig anwendet.
Verfasst: 12. April 2006 08:17
von Alci
Hi,
ich benutze die aktuelleste Version (4.1.2) von QT. Vorher hatte ich die 4.1.1, aber da hatte ich die gleichen Probleme gehabt.
Wenn ich z. B. einen langen Text (nur als Plaintext) in die QTextEdit einfüge, dann ist die Performance IMO nicht so gut, sodass man damit flüssig arbeiten könnte.
Das markieren von Textpassagen oder das schnelle tippen geht nur mit Verzögerungen. Schon das einfügen von langem Text dauert (im vergleich zu anderen Programmierer-Editoren) sehr lange.
Diese Probleme waren in früheren Versionen nocht schlimmer (zumindest habe ich das gelesen, habs aber nie kontrolliert, da ich erst seit QT4 mit QT arbeite), da war dieses Widget nocht langsamer. In der Version 4 hat sich (glaub ich) das ganze zwar gebessert, aber für meine Zwecke ist es trotzdem weiterhin unbrauchbar. Diese Probleme sind Trolltech sicherlich auch bekannt und ich glaub auch nicht, dass das ein Bug ist.
MfG, Alci.
Verfasst: 12. April 2006 08:25
von FlorianBecker
Mh, naja, das ist unschön, auch wenn ich das absolut nicht bestätigen kann, kann aber vielleicht auch sein, dass ich mit Linux arbeite. Aber ich muss anmerken, dass ich zu hause mit einem Athlon 1.3 GhZ arbeite, und da merke ich nix davon.
Und was ist aus dem setCursor Problem geworden?
Verfasst: 12. April 2006 08:29
von Shadow
Alci hat geschrieben:Hi,
Diese Probleme waren in früheren Versionen nocht schlimmer (zumindest habe ich das gelesen, habs aber nie kontrolliert, da ich erst seit QT4 mit QT arbeite), da war dieses Widget nocht langsamer. In der Version 4 hat sich (glaub ich) das ganze zwar gebessert, aber für meine Zwecke ist es trotzdem weiterhin unbrauchbar. Diese Probleme sind Trolltech sicherlich auch bekannt und ich glaub auch nicht, dass das ein Bug ist.
MfG, Alci.
An der Version kann's nicht liegen, weil bei den Änderungen auf die 4.1.2 von Trolltech auch nichts dazu geschrieben wurde. Hast Du Dir mal das Beispiel zu dem QTextEdit-Widget angesehen?
Verfasst: 12. April 2006 08:56
von Alci
Ja, habe ich. Habe auch ein paar Sachen übernommen (z. b. setPlainText). Zum testen der QTextEdit habe ich ein paar meiner Cpp-Dateien mal ausprobiert (da waren welche, die hatten ca. 3000 Zeilen, was ja eigentlich noch für ein Cpp-File durchaus wenig ist), und da war die Performance schon eher träge. Wenn ich mir jetzt vorstelle, dass ich eine Datei lade, die vielleicht 3-mal so groß ist und noch Syntax-highlighting dazu kommt, dann möchte ich gar nicht mehr dran denken.
Aber ich bin bereits dran, ein eigenes (schlankeres) TextEdit-Control zu schreiben. Tippen und löschen von Text geht schon.
MfG, Alci.
Verfasst: 12. April 2006 09:00
von Alci
FlorianBecker hat geschrieben:Mh, naja, das ist unschön, auch wenn ich das absolut nicht bestätigen kann, kann aber vielleicht auch sein, dass ich mit Linux arbeite. Aber ich muss anmerken, dass ich zu hause mit einem Athlon 1.3 GhZ arbeite, und da merke ich nix davon.
Und was ist aus dem setCursor Problem geworden?
Dem setCursor-Problem habe ich mich noch nicht angenommen. Habe in letzter Zeit wenig Zeit (lustiger Satz). Aber ich habe auch schon anderes im Sinne:
http://www.qtforum.de/forum/viewtopic.php?t=1797
MfG, Alci.