WTLVisual C++ 7.1Visual Studio 6Visual C++ 7.0Windows 2003Windows 2000Visual C++ 6.0Windows XP中级开发Visual StudioWindowsC++
一个渐变静态控件






2.75/5 (14投票s)
2003年10月7日

52198

1498
一个带有渐变的静态控件。
引言
我的想法是创建一个小段代码,以便轻松创建一个渐变控件。 我看到很多很棒的代码,但它并不完全是我想要的。 所以我决定创建我自己的 CGradientStatic
类。
CGradientStatic
的使用方法
要在您的应用程序中使用此控件
- 设计对话框并添加静态控件
- 将 GradientStatic.h 头文件添加到您的项目中
- 将
CGradientStatic
赋值给您的静态控件。 - 在
OnInitDialog()
中,使用SubclassWindow
方法将CGradientStatic
控件子类化到 ID。
#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 /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/); ... CGradientStatic m_GradientBar; ... }; //... LRESULT CMainDlg::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { ... m_GradientBar.SubclassWindow( ::GetDlgItem( IDC_STATIC1 ) ); m_GradientBar.SetColor(RGB(255,0,0)); m_GradientBar.SetGradientColor(RGB(0,0,0)); ... }