-
靜態控件
鎖定
- 中文名
- 靜態控件
- 外文名
- LPCTSTR lpszText, DWORD dwStyle
- 包 括
- 靜態正文和圖片控件
- 用 來
- 顯示正文
- 優 點
- 不必操心圖片的重繪問題
- 設 置
- 浮雕風格
靜態控件控件介紹
靜態控件控件作用
靜態控件的主要起説明和裝飾作用。MFC的CStatic類封裝了靜態控件。CStatic類的成員函數Create負責創建靜態控件,該函數的聲明為
BOOL Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );
靜態控件控件參數定義
參數lpszText指定了控件顯示的正文。dwStyle指定了靜態控件的風格,表6.1顯示了靜態控件的各種風格,dwStyle可將這些風格組合起來。rect是一個對RECT或CRect結構的引用,用來説明控件的位置和尺寸。pParentWnd指向父窗口,該參數不能為NULL。nID則説明了控件的ID。如果創建成功,該函數返回TRUE,否則返回FALSE.
靜態控件控件參數
靜態控件參數介紹
lpszText
dwStyle
指定靜態控件的窗口風格。以下任何靜態控件風格的組合都可以用於這個控件。
SS_BITMAP
和寬度,靜態控件將根據位圖的大小自動調節自身的尺寸。
SS_BLACKFRAME
該控制域以矩形邊界顯示,顏色與當前窗口框架相同。
SS_BLACKRECT
該控制域以填充的矩形顯示,顏色與當前的窗口框架相同。
SS_CENTER
使文字在靜態控件中水平居中。
SS_CENTERIMAGE
當靜態控件用於顯示文本時,該風格將使文本在靜態控件中垂直居中。當靜態控件用於
顯示位圖或圖標時,該風格將使位圖或圖標在靜態控件中垂直居中,當位圖或圖標小於
靜態控件時,靜態控件將使用位圖或圖標左上角的點的顏色填充空白處。
SS_ENHMETAFILE
指定在靜態控件中顯示一個增強型圖元文件。該風格將不會忽略靜態控件的高度和寬度
,而圖元文件將調節自身的大小來適應靜態控件的尺寸。
靜態控件空間參數流程
SS_ETCHEDFRAME
建立一個浮雕邊框。
SS_ETCHEDHORZ
建立一個邊框,並將頂端邊框設置為浮雕風格。
SS_ETCHEDVERT
建立一個邊框,並將左側邊框設置為浮雕風格。
SS_GRAYFRAME
該控制域以矩形邊界顯示,顏色與當前桌面相同。
SS_GRAYRECT
該控制域以填充的矩形顯示,顏色與當前的桌面相同。
SS_ICON
指定在靜態控件中顯示一個被定義在資源文件中的圖標。該風格將忽略靜態控件的高度
和寬度,靜態控件將根據位圖的大小自動調節自身的尺寸。
SS_LEFT
使文字在靜態控件中左對齊。
靜態控件相關指令
靜態控件常規指令
SS_LEFTNOWORDWRAP
在缺省情況下,靜態控件把’\n’和’\t’都作為換行標記。只有在設置本風格後,靜
態控件才把’\t’看作是製表鍵(缺省時製表鍵的寬度為8個字符的寬度)。
SS_NOPREFIX
該標誌表示終止對前綴字符的處理。通常,本成員函數將前綴助記符’&’解釋為一個指
令,即在’&’後面的字符下面劃一下劃線。並且將’&&’解釋成一個單個的’&’指令
。通過指令指定該標誌,這種處理就不再進行了。
SS_NOTIFY
在缺省情況下,靜態控件是不響應鼠標事件的。只有在設置該風格後,當用户單擊靜態
控件時,靜態控件才向父窗口發送STN_CLICKED通知。
SS_OWNERDRAW
在指定該風格後,當靜態控件在視覺外觀發生變化時,該靜態控件的屬主窗口將響應WM
_DRAWITEM消息。
SS_RIGHT
靜態控件操作指令
使文字在靜態控件中左對齊。
SS_SIMPLE
只顯示一行文本,文本不能被剪切或替換(父窗口不能處理CTLCOLOR消息)。
SS_SUNKEN
設置一個下沉的靜態控件,當靜態控件為一個方框時,方框的四邊下沉;當靜態控件為
一個矩形時,整個矩形下沉。
SS_USERITEM
建立一個用户自定義項目。
SS_WHITEFRAME
建立一個白色的邊框。
SS_WHITERECT
建立一個白色的矩形。
rect
指定靜態控件的位置和大小。它可以是一個RECT結構類型的數據或一個CRect類的對象。
pParentWnd
指定CStatic類的對象的父窗口,通常是一個CDialog類的對象。它不能是NULL。
nID = 0xffff
指定靜態控件的控件標識。