Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Styles in RichEdit

Posted on 1998-05-27
9
385 Views
Last Modified: 2013-11-23
I have a problem with getting the contens of a RichEdit in a special format.

The problem is very simple:The text property of a richedit gives me the plain text. I need a "StyledText"-property that enables me to get and set the text with special codes for beginning and end of bolded, italiced and underlined text.

If "begin bold" is marked as "<B>" and "end bold" the same, I would have the following "StyledText":

"The word <B>fat<B> is marked bold"

I know it's possible to select some text and check selattributes to see if it's bold and then set the codes accordingly. But its too time consuming to check a lot of text that way.  Offcourse should nesting of codes be possible as in:

"<U>The word <B>fat<B> is marked bold<U>",

where the sentence is underlined.

By the way, I'm using Delphi 3.02...
0
Comment
Question by:MickeyE
  • 2
  • 2
  • 2
  • +3
9 Comments
 
LVL 2

Expert Comment

by:rene100
ID: 1348042
hi mickeyE

the only other wea i know is to get the rtf text of the control
(perhaps with exporting it with lines.savetostream) and get the attributes from there
0
 

Expert Comment

by:heapster
ID: 1348043
Trying to get the delphi native richedit component is flogging a bit of a dead horse in my opinion.  I went through months of work trying to sort out a miniature version of Word in a text object and the best solution in the end was to use a third party component - specifically WPtools by Julian Ziersch is the best on the market.  You can use field codes to tag text and set up all the styles you like using tags/invisible markers/field codes.
The native RichEdit component is lacking in so many departments i simply wouldnt recommend using it.
0
 

Author Comment

by:MickeyE
ID: 1348044
I'm sorry I didn't mention that I don't want to use any 3rd party components.
0
Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

 

Expert Comment

by:heapster
ID: 1348045
So presumably you want the rich text format so you can read/write the attributes more quickly?
0
 

Author Comment

by:MickeyE
ID: 1348046
Yes... This "StyledText" property I mention.

I thing that rene100 is right about using the SaveToStream-functionality and write a TConversion-descendant class, that handles the conversion from rtf to "StyledText".... The Delphi documentation is very weak regarding writing such a class. Anyway I'm not really interested in saving the text, just getting it.

I will check this out soon, I just haven't had the time to do it.
0
 
LVL 7

Accepted Solution

by:
BlackMan earned 300 total points
ID: 1348047
Hi MickeyE
I've done such a beast, i'll email to you, it's quite large...
0
 
LVL 7

Expert Comment

by:BlackMan
ID: 1348048
Hi MickeyE.. I've cut my code down - please reopen the question and i'll post it here
0
 
LVL 3

Expert Comment

by:lopem
ID: 2781583
Hi BlackMan,

I can't find the code of the styledtext question. Can you send me the code to my account or post it in the expert section?  Thanks a lot in advance.

Manuel López (lopem)
0
 

Expert Comment

by:Delphiwizard
ID: 12612497
Blackman or MickeyE, can you sent me the code for the styles in richedit too?

Would be of great help to me.

Thanks, Stef
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question