以下是CButtonST類的所有公共成員函數(函數名按音序排列先後):
CButtonST::DrawBorder
DWORD DrawBorder(BOOL bDrawBorder = TRUE, BOOL bRepaint = TRUE)
注釋:
因為CButtonST的默認顯示風格是平面按鈕。調用此函數用來顯示按鈕邊框。
參數:
bDrawBorder: 值為TRUE則顯示按鈕邊框。
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函數執行完畢。
CButtonST::DrawFlatFocus
DWORD DrawFlatFocus(BOOL bDrawFlatFocus, BOOL bRepaint = TRUE)
注釋:
此函數只對平面按鈕有效,調用此函數可以在按鈕中顯示焦點。
參數:
bDrawFlatFocus : 值為TRUE則會在平面按鈕上顯示焦點。
bRepaint : 值為TRUE則馬上重畫按鈕。
返回值:
BTNST_OK: 表示函數執行成功。
CButtonST::DrawTransparent
void DrawTransparent(BOOL bRepaint = FALSE)
注釋:
調用此函數來激活透明顯示模式。注意,此操作是不可逆的,而且必須在按鈕實例創建之後調用。函數將會在內存中保留一份窗口背景的拷貝,因此請真的有需要時才調用此函數,以免浪費內存空間。透明模式一般是在帶有背景的窗口中使用。
參數:
bRepaint : 為TRUE則馬上重繪按鈕。
CButtonST::OffsetColor
DWORD OffsetColor(BYTE byColorIndex, short shOffset, BOOL bRepaint = TRUE)
注釋:
調用此函數可以設置按鈕在各種狀態下顯示指定的底色。函數會根據所傳遞的偏移量參數以及按鈕原來的默認底色產生一個新的顏色值。通過這樣的方法可以使得按鈕在不同狀態下的顏色變化更為自然。
參數:
byColorIndex : 狀態索引值,它的取值必須是以下枚舉值之一。
取值注釋
BTNST_COLOR_BK_IN 鼠標指針位於按鈕上面時的底色
BTNST_COLOR_FG_IN 鼠標指針位於按鈕上面時的前景色
BTNST_COLOR_BK_OUT 鼠標指針不在按鈕上面時的底色
BTNST_COLOR_FG_OUT 鼠標指針不在按鈕上面時的前景色
BTNST_COLOR_BK_FOCUS 焦點位於按鈕上面時的底色
BTNST_COLOR_FG_FOCUS 焦點位於按鈕上面時的前景色
*前景色一般是指文字的顏色
shOffsetColor: 指定顏色的偏移量,它的取值范圍是[-255,255]。
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK : 函數執行成功。
BTNST_INVALIDINDEX : 由 byColorIndex 指定狀態索引值無效。
BTNST_BADPARAM : 根據偏移量生成的值超出RGB的顏色取值范圍。
CButtonST::SetAlign
DWORD SetAlign(BYTE byAlign, BOOL bRepaint = TRUE)
注釋:
調用此函數可以設定按鈕上圖標(或位圖)於按鈕上文字的相對位置。
參數:
byAlign: 位置參數,它的取值必須是以下枚舉量之一。
取值注釋
ST_ALIGN_HORIZ 圖標/圖片在左,文字在右
ST_ALIGN_VERT 圖標/圖片在上,文字在下
ST_ALIGN_HORIZ_RIGHT 圖標/圖片在右,文字在左
默認值為ST_ALIGN_HORIZ.
bRepaint: 為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函數執行成功。
BTNST_INVALIDALIGN: 位置參數無效。
CButtonST::SetAlwaysTrack
DWORD SetAlwaysTrack(BOOL bAlwaysTrack = TRUE)
注釋:
此函數只對平面按鈕有效。調用此函數可以設定按鈕是否顯示高亮顏色。
參數:
bAlwaysTrack: 值為TRUE時,無論前窗口是否為激活窗口,只要鼠標指針移動到按鈕上面都會發按鈕的顯示狀態發生變化。默認值為TRUE。
值為FALSE時,如果窗口未被激活,按鈕的顯示不會發生變化。
返回值:
BTNST_OK : 函數執行成功。
CButtonST::SetBitmaps
DWORD SetBitmaps(int nBitmapIn, COLORREF crTransColorIn, int nBitmapOut = NULL, COLORREF crTransColorOut = 0)
DWORD SetBitmaps(HBITMAP hBitmapIn, COLORREF crTransColorIn, HBITMAP hBitmapOut = NULL, COLORREF crTransColorOut = 0)
注釋:
調用此函數可以在按鈕上顯示指定的圖片(Icon)。如果對同一個按鈕重復調用了此函數的話,那麼按鈕只顯示最後一次指定的圖片。