Click here to Skip to main content
15,881,248 members
Articles / Desktop Programming / MFC
Article

A simple transparent CStatic-derived class

Rate me:
Please Sign up or sign in to vote.
4.43/5 (31 votes)
16 Dec 2002 231.3K   8.5K   59   47
This class allows you to create transparent static controls. For instance, you can add text on a bitmap in a dialog.

Image 1

Description

Sometimes, transparent static controls are very useful. For example, you have a dialog with a bitmap in it and want to add some text in the picture. If you create a static control, your text will appear on an opaque background, even if you've selected the WS_EX_TRANSPARENT style (this style is *very* buggy).

How to implement

To use the class in your application you need to do the following:

  1. Insert the .h and .cpp files into your project.
  2. Add a static control into your dialog resource.
  3. Add a member variable for that static control.
  4. Modify the variable declaration.
    Change this:
    CStatic m_Static
    To this:
    CTransparentStatic m_Static
  5. Don't forget the #include at the top of the include file:
    #include "TransparentStatic.h"

That's it. You should now have a transparent background.

Features

The following Static Styles are implemented:

  • SS_LEFT
  • SS_LEFTNOWORDWRAP
  • SS_RIGHT
  • SS_CENTER
  • SS_CENTERIMAGE (center text vertically)
  • SS_NOPREFIX
  • SS_WORDELLIPSIS
  • SS_ENDELLIPSIS
  • SS_PATHELLIPSIS

The various borders (SS_SUNKEN, WS_EX_CLIENTEDGE, ...) are also supported.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Belgium Belgium
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionHow to use it in VC6.0??? Pin
qingqingcao22-Dec-11 20:02
qingqingcao22-Dec-11 20:02 
QuestionWhat's the license of this article? Pin
Xueyan4-Sep-11 18:49
Xueyan4-Sep-11 18:49 
GeneralGUI Bug Pin
Ain Bahadur Mor7-Oct-08 22:20
Ain Bahadur Mor7-Oct-08 22:20 
GeneralNot Working.. Pin
Renjith Ramachandran29-Jun-04 20:22
Renjith Ramachandran29-Jun-04 20:22 
GeneralRe: Not Working.. Pin
Jaime Stuardo21-Nov-04 3:53
Jaime Stuardo21-Nov-04 3:53 
Questionwhere are the resource fiiles? Pin
gundamchen9-Jun-04 16:22
gundamchen9-Jun-04 16:22 
GeneralHelp - filckering when repeatly redraw Pin
lily0lin7-May-04 8:29
lily0lin7-May-04 8:29 
GeneralRe: Help - filckering when repeatly redraw Pin
eric feng17-May-04 4:33
eric feng17-May-04 4:33 
GeneralGarbled text on a redraw Pin
AAntix12-Jan-04 4:25
AAntix12-Jan-04 4:25 
QuestionHow to change static text color? Pin
jameslauta11-Dec-03 13:50
jameslauta11-Dec-03 13:50 
GeneralGood, How about Icon or Bitmap Pin
Hing26-Nov-03 16:20
Hing26-Nov-03 16:20 
GeneralSimple Enhancement Pin
Hing26-Nov-03 17:00
Hing26-Nov-03 17:00 
Questionwhy "ss_sunken" don't work?? Pin
send_ch17-Aug-03 2:04
send_ch17-Aug-03 2:04 
GeneralWM_ERASEBKGND Pin
MarkovAlex6-Aug-03 15:08
MarkovAlex6-Aug-03 15:08 
QuestionWhat if you need to redraw the text? Pin
Arash Salarian5-May-03 6:46
Arash Salarian5-May-03 6:46 
It's all fine ang great. But what if you need to redraw the text? It will be drawn on top of the old text and there will be a mess. What to do in this case? Confused | :confused:
AnswerRe: What if you need to redraw the text? Pin
use_id3-Jul-03 3:29
use_id3-Jul-03 3:29 
AnswerRe: What if you need to redraw the text? Pin
wutongtree8-Jul-03 10:03
wutongtree8-Jul-03 10:03 
GeneralRe: What if you need to redraw the text? Pin
Ye Fenglei21-Jul-03 21:37
Ye Fenglei21-Jul-03 21:37 
GeneralRe: What if you need to redraw the text? Pin
imaudi8-Sep-03 18:48
imaudi8-Sep-03 18:48 
GeneralRe: What if you need to redraw the text? Pin
Sick@work2-Feb-04 3:29
Sick@work2-Feb-04 3:29 
GeneralRe: What if you need to redraw the text? Pin
eric feng17-May-04 4:30
eric feng17-May-04 4:30 
GeneralRe: What if you need to redraw the text? Pin
KaЯl1-Dec-05 21:38
KaЯl1-Dec-05 21:38 
GeneralRe: What if you need to redraw the text? Pin
Nic Wilson6-Jul-10 15:02
Nic Wilson6-Jul-10 15:02 
GeneralRe: What if you need to redraw the text? Pin
wlburgess21-Oct-05 6:46
wlburgess21-Oct-05 6:46 
GeneralI use it in windowsce.net,but error has happened Pin
Tony.Xu27-Mar-03 21:08
Tony.Xu27-Mar-03 21:08 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.