CStatic-Derived Digital Counter – WITHOUT BITMAPS

CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

.

Description

CStaticCounter is a CStatic derived control that displays a LED
style counter – without using bitmap resources

  • No bitmap resources are needed
  • Digits’ height width and ‘weight’ are proportional to the size of the control
  • Uses memory compatible DC to produce flicker-free display

Functions


void SetColorBackGround(COLORREF crColor)

[Optional] Default colours are as shown in above screenshot


void SetColorForeGround(COLORREF crColor)

[Optional] Default colours are as shown in above screenshot


void SetDrawFaded(bool bState)

[Optional] While the “DrawFaded” state is true, the “LED notches” that are not ‘lit’ are drawn at a third the intensity of the foreground colour


void Display(int nNumber)

Use this to update & display the number of your choice.

How to Implement

  • Add the StaticCounter.h and StaticCounter.cpp to your project
  • Add a normal static control to your dialog box and assign a unique ID, e.g. IDC_STATIC_COUNTER
  • Use classwizard to create a control member variable – say, m_staticCounter
  • In your dialog class’ header file, change the “CStatic m_staticCounter” to “CStaticCounter m_staticCounter”
  • Include the header (StaticCounter.h) in your dialog class’ header & implementation files
  • Call the Display() function to change the number displayed.

Downloads

Download Sample Executable – 67 Kb

Download demo project – 19 Kb
Download source – 4 Kb

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read