Zum Inhalt springen

TRichEdit -Feld unter Borland C++


Empfohlene Beiträge

Mahlzeit!

ich hätt da ein Problem:

Ich soll im Zuge des Erlernens der Oberflächenprogrammierung mit der Borland C++ Builder 5 IDE einen kleinen TextEditor schreiben. Hauptbestandteil ein (T)RichEdit Text-Feld, in dem man ja außer bloßem Text auch u.A. Ausrichtung und Formatierungen zuweisen kann.

Die einzelnen Formatierungen kann man per Check-Box aktivieren bzw. deaktivieren.

jetzt hat man gelernt per Befehl

rchedtText->SelAttributes->Styles << fsBold;

Formatierungen hinzuzufügen und sie per ... >> fsBold; wieder zu entfernen.

Dies geschieht also wenn die CheckBox.Checked() = true bzw false ist.

Soweit sogut.

Jetzt ergibt sich folgendes problem. Ist der Text (oder ein Bereich davon) bereits mit einem Style formatiert und man fügt eine Weitere formatierung hinzu, verliert der Text (im Bereich der Markierung) seine vorherige Formatierung und besitzt also nur noch die gerade aktivierte.

Dabei tritt noch ein weiteres Problem auf: die alte Formatierung geht zwar verloren, aber die Check-Box ist immernoch Checked, obwohl das für den Text-Bereich nicht zutreffend ist.

Ich dachte also an ein Ereignis zur Überprüfung der Textformatierung an der Stelle, an die sich der Cursor bewegt (also wohin die Maus Clickt und wieder loslässt).

Die Befehl den ich zum Überprüfen der gesetzten Formatierungsattribute verwende, lautet:

rchedtText->SelAttributes->Styles.Contains(fsBold);

Das Ereignis das ausgeführt werden soll: rchedtText::OnMouseUp (?)

Das war ein steiniger Weg bis hierher, nur so hab ich es gesagt bekommen, dass es funzen würde.

NUR: kompiliere ich jetzt, funktioniert das noch, starte ich das Programm aber, bekomme ich sofort einen Laufzeitfehler (noch bevor ich die Maske sehe) und in einer .hpp die Fehlerstelle markiert.

Ich kann morgen ja mal genaueres dazu posten - hab das Projekt grad nicht da.

Wär stark wenn mir da jemand helfen könnte...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...