Alles rund um die Programmierung mit Qt
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 8. Oktober 2009 15:27
Hi,
ist es möglich (und wenn ja wie) bestimmte Wörter im QTextEdit-Feld farbig hervor zu heben, wie es z.B. jeder guter Compiler tut?
Das ganze muss natürlich dynamisch funktionieren, sprich, wenn das Wort fertig geschrieben wurde und nicht alle 10 Sekunden
Dankend,
Night
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 8. Oktober 2009 16:37
Ah, das ist schonmal sehr hilfreich, danke!
Jetzt weiss ich aber gerade nicht wie ich die highlight Funktion beim Eingeben aufrufen kann.
Könnte mir dazu noch jemand ein Beispiel geben? Dann wäre ich auch fürs erste bedient
Edit:
Das Signal "TextChanged" schaut gut aus, doch wie kann ich beim aufrufen dieses Signals eine Funktion starten?
upsala
Beiträge: 3946 Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:
Beitrag
von upsala » 8. Oktober 2009 18:48
Schon mal in die Doku von QSyntaxHighlighter geschaut?
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 8. Oktober 2009 18:55
Wenn du den Link meinst, den stippy gepostet hat, dann schon. Andernfalls, wäre es nett von dir, wenn du mir den entsprechenden Link geben könntest.
-=Freaky=-
Beiträge: 503 Registriert: 29. Dezember 2006 22:54
Wohnort: HL
Beitrag
von -=Freaky=- » 8. Oktober 2009 19:11
Code: Alles auswählen
This function is called when necessary by the rich text engine, i.e. on text blocks which have changed.
d.h. darum musst du dich nicht selbst kuemmern.
mfg,
julian
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 8. Oktober 2009 19:26
Oh, den Teil habe ich wohl übersehen.
Jedoch will das nicht so, wie ich will.
you must subclass QSyntaxHighlighter and reimplement highlightBlock().
Gemacht, aber wenn ich compile sagt der Compiler
cannot declare variable `widget' to be of type `Widget'
because the following virtual functions are abstract:
virtual void QSyntaxHighlighter::highlightBlock(const QString&)
Die Klasse:
http://pastebin.com/m5c63291
Der Copy+Paste Codeabschnitt:
http://pastebin.com/m4784cf28
Wo liegt mein Denkfehler?
niyou
Beiträge: 13 Registriert: 26. Juni 2009 08:28
Beitrag
von niyou » 9. Oktober 2009 12:41
da war ich wohl zu schnell...
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 9. Oktober 2009 15:00
Kann mir jemand ein konkretes Beispiel zur Benutzung geben? Ich bekomme nichts lauffähiges hin
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 9. Oktober 2009 15:25
Wo genau tritt der Fehler auf? Die Fehlermeldung so hilft nicht (viel)
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
MiKla
Beiträge: 134 Registriert: 29. Juli 2007 15:29
Beitrag
von MiKla » 9. Oktober 2009 15:27
Und das
Beispiel aus den Examples hilft Dir nicht weiter?
Michael
Nightblizard
Beiträge: 39 Registriert: 7. Oktober 2009 20:32
Beitrag
von Nightblizard » 9. Oktober 2009 16:08
Nein, da mir anscheinend die Datei "QtCored4.dll" fehlt und ich diese bis jetzt noch nicht im Netz gefunden habe. Es gibt die Datei QtCore4.dll, aber diese umbenennen und es damit versuchen funktioniert natürlich nicht...
Ich bin am verzweifeln, schon wieder ein GUI, welches nicht funktioniert!
MiKla
Beiträge: 134 Registriert: 29. Juli 2007 15:29
Beitrag
von MiKla » 9. Oktober 2009 16:22
Das Beispiel im Release Mode kompilieren, oder die Debug Libs erstellen!!! Aber sollte doch eigentlich Vorraussetzung sein!!!
Michael
MiKla
Beiträge: 134 Registriert: 29. Juli 2007 15:29
Beitrag
von MiKla » 9. Oktober 2009 19:47
Schon mal geschaut ob noch andere Lib's im Pfad sind???
Du solltest Dein Programm als zip hier anhängen, dann kann man das schneller testen.
Michael