Introduction
The idea was to have a small piece of code which makes it easy to create a
gradient control. I saw a lot of great code, but it was not exactly what I
want. So I decided to create my own CGradientStatic
-class.
Usage of CGradientStatic
To use this control in your application:
- Design the dialog and add the Static control
- Add the GradientStatic.h header file to your project
- Assign a
CGradientStatic
to your static control.
- In
OnInitDialog()
, subclass CGradientStatic
control to ID using the SubclassWindow
method.
#include "CGradientStatic.h"
class CMainDlg : public CDialogImpl<CMainDlg>
{
BEGIN_MSG_MAP(CMainDlg)
...
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
REFLECT_NOTIFICATIONS()
END_MSG_MAP()
...
LRESULT OnInitDialog(UINT , WPARAM ,
LPARAM , BOOL& );
...
CGradientStatic m_GradientBar;
...
};
LRESULT CMainDlg::OnInitDialog(UINT , WPARAM ,
LPARAM , BOOL& )
{
...
m_GradientBar.SubclassWindow( ::GetDlgItem( IDC_STATIC1 ) );
m_GradientBar.SetColor(RGB(255,0,0));
m_GradientBar.SetGradientColor(RGB(0,0,0));
...
}