靜態(tài)文本控件的功能比較簡單,可作為顯示字符串,圖標,位圖用。創(chuàng)建一個窗口可以使用成員函數(shù):
BOOL CStatic::Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );
其中dwStyle將指明該窗口的風格,除了子窗口常用的風格WS_CHILD,WS_VISIBLE外,你可以針對靜態(tài)控件指明專門的風格。
SS_CENTER,SS_LEFT,SS_RIGHT 指明字符顯示的對齊方式。
SS_GRAYRECT 顯示一個灰色的矩形
SS_NOPREFIX 如果指明該風格,對于字符&將直接顯示,否則&將作為轉義符,&將不顯示而在其后的字符將有下劃線,如果需要直接顯示&必須使用&&表示。
SS_BITMAP 顯示位圖
SS_ICON 顯示圖標
SS_CENTERIMAGE 圖象居中顯示
控制顯示的文本利用成員函數(shù)SetWindowText/GetWindowText用于設置/得到當前顯示的文本。
控制顯示的圖標利用成員函數(shù)SetIcon/GetIcon用于設置/得到當前顯示的圖標。
控制顯示的位圖利用成員函數(shù)SetBitmap/GetBitmap用于設置/得到當前顯示的位圖。下面一段代碼演示如何創(chuàng)建一個顯示位圖的靜態(tài)窗口并設置位圖
CStatic* pstaDis=new CStatic;
pstaDis->Create("",WS_CHILD WS_VISIBLE SS_BITMAP SSCENTERIMAGE,CRect(0,0,40,40),pWnd,1);
CBitmap bmpLoad;
bmpLoad.LoadBitmap(IDB_TEST);
pstaDis->SetBitmap(bmpLoad.Detach());