Transparent RichEditCtrl

256 colors

Hicolor

Environment: VC5, NT4 SP3

CRichEditCtrlEx is derived from CRichEditCtrl and contains two methods for create the control.

The background of a rich control could be changed using SetBackgroundColor() method. When the display has 256 colors the RGB value from SetBackgroundColor() method is converted into an apropiate color from system palette. So I created a pattern brush with the desired RGB value with I filled the control in OnErasebkgnd() method. I have also treated the invalidate message because the control being transparent didn't actualize itself.

The first image is taken from a 256 color display adapter and the second from a 16 bit one.

The method MsgFilterRich() is used for treatment the mouse or key events.

Downloads

Download demo project - 23 KB


Comments

  • Transparency While The Window is Hidden

    Posted by Legacy on 05/02/2003 12:00am

    Originally posted by: TDS

    My Problem is I Want Text From The RichEditCtrl While the Window is Hidden With Transparent Backgrnd.
    For this Problem I Had Used Ur Code But While The Window is Hidden WM_PAINT Mesage Gets Posted Continously To The Parent Window .
    Regard
    TDS

    Reply
  • Could you tell me my mistake? Please~

    Posted by Legacy on 08/01/2001 12:00am

    Originally posted by: Moon Joon Sik

    error C2440: 'initializing' : cannot convert from 'class std::list<class CString,class std::allocator<class CString> >::const_iterator' to 'class std::list<class CString,class std::allocator<class
    CString> >::iterator'

    This is an error message. I don't know why error occur. Please teach me~ Have a good time~ Bye~

    Reply
  • Transparency in RichEdit2

    Posted by Legacy on 04/08/2001 12:00am

    Originally posted by: Anton Riabov

    Rich edit 2.0 (and higher) can be made transparent with WS_EX_TRANSPARENT style, and any kind of background can be put under it with minimal flickering, as long as parent window redraws only the modified rectangle. Hope this helps.

    Reply
  • Flicker on scroll

    Posted by Legacy on 08/12/1999 12:00am

    Originally posted by: Bob Cozzi

    The knowledge that we can use the transparent style is great. I've needed to draw (water mark style) for a long time.

    The problem is that when I use the transparent style, the scroll feature causes a mud slide. The text smears across the screen while it is scrolled, and never recovers.

    To resolve this I have to update the entire window, but the problem is, the Erase background routine causes the entire RichEdit control to blink. This is not acceptable. :(

    Redraw(FALSE) doesn't work and I can't seem to get at the RichEdit control's ITextDocument to try to do a Freeze() method. Very close, but for me it isn't working good enough. :( Any Ideas?

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • 10 Rules that Make or Break Enterprise App Development Projects In today's app-driven world, application development is a top priority. Even so, 68% of enterprise application delivery projects fail. Designing and building applications that pay for themselves and adapt to future needs is incredibly difficult. Executing one successful project is lucky, but making it a repeatable process and strategic advantage? That's where the money is. With help from our most experienced project leads and software engineers, …

  • IT decision support impacts all aspects of technology management, from governance and strategy to budgets and resource planning. IT decision support effectiveness often falls prey to data-driven challenges that make it difficult to understand the data in context. These challenges: overwhelming data volumes, heterogeneous data types, and growing data complexity. This Forrester Consulting Paper reports the three key findings from their study conducted, on behalf of BDNA, to test the hypothesis that data …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds