在对话框里添加状态栏(一)
本文转自:http://sqq-htwlr.blog.163.com/blog/static/48833555200863072947919/
状态栏类CStatusBar
在MFC类库中,提供了CStatusBar类用于设计状态栏,CStatusBar类的主要方法如下。
(1)Create方法:该方法用于创建状态栏窗口。语法如下:
BOOL Create( CWnd* pParentWnd, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,
UINT nID = AFX_IDW_STATUS_BAR );
参数如下
l pParentWnd:标识状态栏父窗口。
l dwStyle:标识状态栏风格。可选值如下:
² CBRS_TOP:状态栏位于框架窗口的顶部。
² CBRS_BOTTOM:状态栏位于框架窗口的底部。
² CBRS_NOALIGN:当父窗口重新调整尺寸时不重新定位状态栏。
l nID:标识状态栏ID。
(2)CreateEx方法:该方法与Create方法类似,用于创建状态栏窗口,只是该方法支持扩展风格。语法如下:
BOOL CreateEx( CWnd* pParentWnd, DWORD dwCtrlStyle = 0 ,DWORD dwStyle = WS_CHILD |
WS_VISIBLE | CBRS_BOTTOM,UINT nID = AFX_IDW_STATUS_BAR );
参数如下
l pParentWnd:标识父窗口指针。
l dwCtrlStyle:标识状态栏的扩展风格。可选值如下。
² SBARS_SIZEGRIP:在状态栏的右侧有一个调整大小的状态栏控件,它是一个特别的区域,可以单击并拖动它来调整父窗口的大小。
² SBT_TOOLTIPS:状态栏支持工具提示。
l dwStyle:标识窗口风格。
l nID:标识状态栏ID。
(3)SetIndicators方法:该方法用于向状态栏中添加面板,并设置面板ID。语法如下:
BOOL SetIndicators( const UINT* lpIDArray, int nIDCount );
参数如下
l lpIDArray:标识一个无符号整型数组,该数组中包含了面板ID。
l nIDCount:用于标识数组元素数量。
(4)CommandToIndex方法:该方法用于根据面板ID返回面板索引。语法如下:
int CommandToIndex( UINT nIDFind ) const;
参数如下
l nIDFind:标识面板ID。
返回值:返回值是面板ID对应的面板索引,如果面板ID没有关联的面板,返回值为-1。
(5)GetItemID方法:该方法与CommandToIndex方法是相对的,用于根据面板索引返回面板ID。语法如下:
UINT GetItemID( int nIndex ) const;
参数如下
l nIndex:标识面板ID。
(6)GetItemRect方法:该方法用于获取某个面板的显示区域。语法如下:
void GetItemRect( int nIndex, LPRECT lpRect ) const;
参数如下
l nIndex:标识面板ID。
l lpRect:用于接收面板的显示区域。
(7)GetPaneInfo方法:该方法用于获取面板信息。语法如下:
void GetPaneInfo( int nIndex, UINT& nID, UINT& nStyle, int& cxWidth ) const;
参数如下
l nIndex:标识面板索引。
l nID:用于接收面板ID。
l nStyle:用于接收面板风格。
l cxWidth:用于接收面板宽度。
(8)GetPaneStyle方法:该方法用于获取面板风格。语法如下:
UINT GetPaneStyle( int nIndex ) const;
参数如下
l nIndex:标识面板索引。
返回值:面板风格。
(9)GetPaneText方法:该方法用于获取面板文本。语法如下:
CString GetPaneText( int nIndex ) const;
void GetPaneText( int nIndex, CString& rString ) const;
参数如下
l nIndex:标识面板索引。
l rString:用于接收面板文本。
(10)GetStatusBarCtrl方法:该方法用于返回底层的通用状态栏控件。语法如下:
CStatusBarCtrl& GetStatusBarCtrl( ) const;
(11)SetPaneStyle方法:该方法用于设置面板[g2] 风格。语法如下:
void SetPaneStyle( int nIndex, UINT nStyle );
参数如下
l nIndex:标识面板索引。
l nStyle:标识面板风格。
(12)SetPaneText方法:该方法用于设置面板文本。语法如下:
BOOL SetPaneText( int nIndex, LPCTSTR lpszNewText, BOOL bUpdate = TRUE );
参数如下
l nIndex:标识面板ID。
l lpszNewText:标识面板文本。
l bUpdate:标识是否立即更新面板。
(13)SetPaneInfo方法:该方法用于设置面板基本信息。语法如下:
void SetPaneInfo( int nIndex, UINT nID, UINT nStyle, int cxWidth );
参数如下
l nIndex:标识面板索引。
l nID:表示设置的面板ID。
l nStyle:表示设置的面板风格。
l cxWidth:表示设置的面板宽度。