文章目录
BS_按钮属性与CButton类功能简介
CButton类功能简介
class CButton : public CWnd
{
public:
CButton();
virtual BOOL Create(LPCTSTR lpszCaption, DWORD dwStyle,
const RECT& rect, CWnd* pParentWnd, UINT nID);
HICON SetIcon(HICON hIcon); //需要配合的尺寸
HICON GetIcon() const;
HBITMAP SetBitmap(HBITMAP hBitmap); 位图句柄
HBITMAP GetBitmap() const;
HCURSOR SetCursor(HCURSOR hCursor); 无效成员
HCURSOR GetCursor();
// Attributes
UINT GetState() const;
void SetState(BOOL bHighlight);
int GetCheck() const; //对于单选和复选控件是有效的
void SetCheck(int nCheck);
UINT GetButtonStyle() const;
void SetButtonStyle(UINT nStyle, BOOL bRedraw = TRUE); 无效函数
// Overridables (for owner draw only)
virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); 自绘
// Implementation
public:
virtual ~CButton();
protected:
virtual BOOL OnChildNotify(UINT, WPARAM, LPARAM, LRESULT*);
};
Button Control Styles —BS_按钮属性
CButton类简介:
a)CButton在VC6.0等早期版本,必须设置BS_BITMAP或BS_ICON才能设置图标(文字加图)。
b)近期VS版本即使不设置这两种属性,也直接可以设置文字加图的模式;
c)近期VS版本如果设置以上两种属性,则不显示文字只显示图;
ComboBox 有3种形式,原始组合,下拉代表编辑,下拉不带编辑。
Button有好几种:按钮,(自动)打勾,(自动)单选,分组框
#define BS_PUSHBUTTON 0x00000000L 0代表没有属性(默认就是按钮)
#define BS_DEFPUSHBUTTON 0x00000001L 1代表默认
#define BS_CHECKBOX 0x00000002L 点击之后需要代码来SetCheck才打勾
#define BS_AUTOCHECKBOX 0x00000003L 点击之后直接打勾和去掉打勾(无需代码)
#define BS_RADIOBUTTON 0x00000004L 单选按钮(必须有组)
#define BS_AUTORADIOBUTTON 0x00000009L 自动单选(必须分组)
#define BS_3STATE 0x00000005L
#define BS_AUTO3STATE 0x00000006L
#define BS_GROUPBOX 0x00000007L 分组控件
#define BS_USERBUTTON 0x00000008L
#define BS_PUSHBOX 0x0000000AL
#define BS_OWNERDRAW 0x0000000BL 自绘(做彩色贴图的按钮)
#define BS_TYPEMASK 0x0000000FL
#define BS_LEFTTEXT 0x00000020L
#if(WINVER >= 0x0400)
#define BS_TEXT 0x00000000L 0代表默认是文字
#define BS_ICON 0x00000040L 图标(.ico)
#define BS_BITMAP 0x00000080L 位图(.bmp)
#define BS_LEFT 0x00000100L
#define BS_RIGHT 0x00000200L
#define BS_CENTER 0x00000300L
#define BS_TOP 0x00000400L
#define BS_BOTTOM 0x00000800L
#define BS_VCENTER 0x00000C00L</

文章详细介绍了CButton类在MFC中的使用,包括设置按钮属性如BS_按钮样式,以及如何实现静态文本的穿透属性以用于显示和隐藏密码。同时,展示了在CS架构客户端中如何开发账号管理和密码修改功能,涉及到消息传递、网络通信及数据库操作。

5145

被折叠的 条评论
为什么被折叠?



