CXP GROUPBOX -- XP 风格的组框和窗口风格的组框






4.89/5 (30投票s)
2003年12月3日
1分钟阅读

185568

11534
这个类允许你创建 XP 风格的分组框和窗口风格的分组框。
引言
最近,我在编写一个应用程序。我需要 XP 风格的分组框和一个窗口风格的分组框。我做了一些研究,但没有找到它。所以我决定自己编写。
如何使用它
我从 CButton
派生了类 CXPGroupBox
。它易于使用。在对话框资源编辑器中,像往常一样添加一个分组框,并为该分组框指定一个 ID。然后使用向导创建成员来链接该分组框。请记住,将类别选择为“控件”,变量类型选择为 CButton
。
然后转到对话框头文件并添加
#include "XPGroupBox.h"
并且还将控件类型 CButton
更改为 CXPGroupBox
。例如,更改
CButton m_frmXPGroupBox;
to
CXPGroupBox m_frmXPGroupBox;
然后在对话框类的 CPP 文件中,在 OnInitDialog()
函数中,添加分组框的初始化代码。在演示文件中,它显示
m_frmWin.SetXPGroupStyle(CXPGroupBox::XPGB_WINDOW) .SetBackgroundColor(RGB(201, 201, 151), RGB(255, 255, 204)) .SetFontBold(TRUE); m_frmNormal.SetCatptionTextColor(RGB(16,140,231)) .SetFontBold(TRUE);
m_frmWin
是新的窗口风格分组框,看起来像一个窗口,而 m_frmNormal
是 XP 风格的分组框。
享受吧。
类函数列表
virtual CXPGroupBox& SetBorderColor(COLORREF clrBorder); virtual CXPGroupBox& SetCatptionTextColor(COLORREF clrText); virtual CXPGroupBox& SetBackgroundColor(COLORREF clrBKClient); virtual CXPGroupBox& SetBackgroundColor(COLORREF clrBKTilte, COLORREF clrBKClient); virtual CXPGroupBox& SetXPGroupStyle(XPGroupBoxStyle eStyle); virtual CXPGroupBox& SetText(LPCTSTR lpszTitle); virtual CXPGroupBox& SetFontBold(BOOL bBold); virtual CXPGroupBox& SetFontName(const CString& strFont, BYTE byCharSet = ANSI_CHARSET); virtual CXPGroupBox& SetFontUnderline(BOOL bSet); virtual CXPGroupBox& SetFontItalic(BOOL bSet); virtual CXPGroupBox& SetFontSize(int nSize); virtual CXPGroupBox& SetFont(LOGFONT lf);
在类中,你可以设置字体属性,如字体名称、颜色、大小、粗体、斜体等。你还可以更改窗口风格分组框和 XP 风格分组框的背景颜色。如果你更改分组框的背景颜色,你必须使分组框中控件的样式透明。否则会很难看。:)
历史
- 2004年4月21日 - 更新了源代码和演示