您的位置:首页 > 其它

CIPAddressCtrl控件类

2009-04-22 16:41 260 查看
WIN32提供了一个IP地址控件,MFC封装成CIPAddressCtrl类管理这个控件。
class CIPAddressCtrl : public CWnd
{
DECLARE_DYNAMIC(CIPAddressCtrl)

public:
// Constructors
CIPAddressCtrl();
virtual BOOL Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID);
virtual BOOL CreateEx(DWORD dwExStyle, DWORD dwStyle, const RECT& rect,CWnd* pParentWnd, UINT nID);

// Attributes
BOOL IsBlank() const;
void ClearAddress();
int GetAddress(BYTE& nField0, BYTE& nField1, BYTE& nField2, BYTE& nField3);
int GetAddress(DWORD& dwAddress);
void SetAddress(DWORD dwAddress);
void SetAddress(BYTE nField0, BYTE nField1, BYTE nField2, BYTE nField3);
void SetFieldFocus(WORD nField);
void SetFieldRange(int nField, BYTE nLower, BYTE nUpper);

// Implementation
public:
virtual ~CIPAddressCtrl();
};
这是从MFC源码中摘出的CIPAddressCtrl类的声明。

1、BOOL IsBlank()
当控件四个输入域都为空的时候,函数返回TRUE;哪怕有一个域不为空,函数返回FALSE。

2、void ClearAddress()
清空控件所有输入域。

3、int GetAddress(BYTE& nField0, BYTE& nField1, BYTE& nField2, BYTE& nField3)
获取控件中四个域输入的值,由于IP地址的数值不大于255,所以使用BYTE类型。

4、void SetAddress(BYTE nField0, BYTE nField1, BYTE nField2, BYTE nField3)
设置控件四个域的值。

5、int GetAddress(DWORD& dwAddress)和void SetAddress(DWORD dwAddress)
这两个函数用一个双字节表示IP地址,24-31位表示0域,16-23位表示1域,8-15位表示2域,0-7位表示3域。

6、void SetFieldFocus(WORD nField)
设置控件获得焦点的域,当参数大于3,焦点设置在第一个空域上,如果不存在空域,那么焦点设置在第一个域上。

7、void SetFieldRange(int nField, BYTE nLower, BYTE nUpper)
设置域输入数据的范围。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: