AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tabulatorpositionen im RichEdit

Ein Thema von taaktaak · begonnen am 29. Apr 2008 · letzter Beitrag vom 5. Mai 2009
 
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.993 Beiträge
 
Delphi 7 Professional
 
#1

Tabulatorpositionen im RichEdit

  Alt 29. Apr 2008, 15:00
Moin, Moin,
um meinen kleinen Editor auf Basis des RichEdits etwas komfortabler zu gestalten, versuche ich eine Tabulator-Funktionalität bereitzustellen.

Zuerst habe ich versucht, mit SendMessage() und EM_SETTABSTOPS die Tabulatorpositionen zu setzen. Ohne jeden Erfolg. MSDN sagt, dass auf diesem Wege die Tabulatorpositionen in einem "MultiLineControl" gesetzt werden. Da das aber offenbar nicht funktioniert, gehe ich im Augenblick davon aus, dass TRichEdit (im Gegensatz zu TMemo) kein MultiLineControl ist, auf dass diese Aussage zutrifft. Ist das korrekt, oder habe ich etwas falsch gemacht?

Ein (erster) Blick in die Delphi-Hilfe brachte dann die Erkenntnis, dass Tabulatoren mit RichEdit.Paragraph.Tab[Idx]:=~~ gesetzt werden können. Ok, intern wird dann SendMessage() mit EM_SETPARAFORMAT verwendet, um die Tabulatorpositionen zu setzen.

Nun beobachte ich aber ein mir seltsam erscheinendes Verhalten, und das ist der eigentliche Grund meiner Nachfrage an dieser Stelle:

Ich erwarte, nun für jeden Absatz (Paragraph) individuelle Tabulatorpositionen setzen zu können, bevor im Absatz Text manuell erfasst wird und diese Tabulatorpositionen danach durch Einfügen von Tabs (TabTaste) während der Eingabe anspringen zu können. Also ganz so, wie man es z.B. in Word machen kann. Bei dieser Vorgehensweise haben die gesetzten Tabulatorpositionen aber keinerlei Auswirkung; es werden immer nur die Default-Positionen angesprungen?!
Nur in der entgegengesetzten Reihenfolge funktioniert es: Zuerst im Absatz den Text inklusive Tabs erfassen, dann die Tabulatorpositionen neu setzen - nun wird der Text wie erwartet ausgerichtet. Aber diese Reihenfolge ist leider total unkomfortabel!

Fragen:

Mache ich da etwas falsch, oder ist dieses absonderliche Verhalten eine Eigenart des RichEdits?

Ist das Verhalten im RTF-Format begründet, dass die Festlegung von Tabulatorpositionen nur bestehenden Text (d.h. bereits vorhandene TabStops) ausrichten kann?

Wie/Wo werden die Default-Tabstops definiert?
Ralph
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz