You are trying to declare and implement a variable without any context for it to exist within. Firstly the declaration needs to be inside a class, and secondly the implementation needs to be inside a constructor or other class function.
Unrequited desire is character building. OriginalGriff
I'm sitting here giving you a standing ovation - Len Goodman
I’m creating a window’s form application that will have a series of “do it” buttons and a large scrollable text area for feedback.
The feedback might be something like:
Item 1 completed
Item 2 completed
Warning: I had problems
Item 3 completed
Error: That was a serious problem
Item 4 failed
Item 5 completed
During the feedback I’d want to highlight words like Warning and Error so they pop out.
I tried using a RichTextBox, but it really only allows one selection at a time. I can highlight “Warning” on the fly, but when I try to then highlight “error” I change the selected area and “Warning” goes back to standard text.
My thought was to create a WebBrowser object instead of a RichTextBox object, then format it with HTML. But I can’t seem to find the right syntax to create the browser object, not give it a URL, then be able to build the HTML code on the fly from within my program.
Anyone know of the proper way to create a scrollable text box where I can format the text on the fly as my process runs?
There are many ways to achieve something like that, from simple to very complex:
use a ListBox in OwnerDrawn mode; that will easily allow you to have a homogeneous style for each line of text, meaning you could simply have a line in red, or in a bold font, or ... . An example can be found here[^].
Use a RichTextBox, and make sure to use it correctly. Which means:
- add text, select text, set properties for selected text, unselect;
- rinse and repeat.
Use a WebBrowser; build an HTML document in memory, and assign it to the browser's DocumentText property.
Create your own control, from scratch (based on UserControl or, my preference, Panel); paint everything yourself, and teach it any trick you want.
1. many times I want words in the line to be different, not entire lines.
2. I've looked for ways to "unselect" and the only thing I've found is to select from the end, size 0.
The problem I get is ever time I select a new area to highlight, it un-highlights the previous area.
3. I've tried the WebBrowser approach, it is the most promising. I can create anythign I like with it.
I used the WebBrowser->Document->Write( HtmlCode ) to add lines to the control and all is great -- almost.
My problem is I can't find a way to clear the control for the next "do it" run of the process.
It just keeps appending to the end of what is alreay there.
4. This might be my only answer, but I'd like to avoid it.
RTB coloring is by applying ForeColor/BackColor to text while it is selected; it is NOT the highlighting you get while one piece of text is selected, that merely indicates what is selected, it isn't permanent.
I suggest you search and read some CP articles on text editing in RTBs.
WebBrowser.DocumentText is what is needed in a WB.
Have you overlooked the Multiline property of the RichTextBox? I don't know what the default is but if the RichTextBox is the same as a TextBox then you need to set it to true.
The WebBrowser control and HTML are a little confusing to use initially but they are very useful and worth learning. I wrote the article Introduction to Web Site Scraping[^]. It mostly goes the other direction in the sense of getting from HTML not putting it but it is probably useful for you too.
Actually its my first project in VC++2010. Right now Iam converting my project from C# to VC++2010. In VB.Net I used Modules to use my Public variables and functions to my whole project. And in C# samething I used classes to declare the same accessed in every forms.
Similarly Now I want to use it in VC++2010.. For that any Samples & Codes will be useful for me..
Now Ichanged it as
= static_cast<Microsoft::Office::Interop::Excel::Worksheet^>( MyXLWorkBook->Worksheets->Item);