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)。如果對同一個按鈕重複調用了此函式的話,那么按鈕只顯示最笠淮沃付ǖ耐計 ?br />
參數:
nBitmapIn: 圖片的ID值。當滑鼠指針位於按鈕之上時顯示該圖片。
crTransColorIn: 顏色值。ID為nBitmapIn的圖片中與該顏色相同的區域將顯示透明。
nBitmapOut: 圖片的ID值。當滑鼠指針不在按鈕之上時顯示該圖片。
crTransColorOut: 顏色值。ID為nBitmapOut的圖片中與該顏色相同的區域將顯示透明。
hBitmapIn: 圖片的句柄。當滑鼠指針位於按鈕之上時顯示該圖片。
crTransColorIn: 顏色值。由hBitmapIn指定的圖片中與該顏色相同的區域將顯示透明。
hBitmapOut: 圖片的ID值。當滑鼠指針不在按鈕之上時顯示該圖片。
crTransColorOut: 顏色值。由hBitmapOut指定的圖片中與該顏色相同的區域將顯示透明。
返回值:
BTNST_OK: 函式執行成功。
BTNST_INVALIDRESOURCE: 指定資源讀取失敗。
BTNST_FAILEDMASK: 顏色提取失敗。
CButtonST::SetBtnCursor
DWORD SetBtnCursor(int nCursorId = NULL, BOOL bRepaint = TRUE)
注釋:
這個函式可以讓滑鼠在移動到按鈕上面的時候顯示指定的滑鼠指針。
參數:
nCursorId: 滑鼠指針的ID值。
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
BTNST_INVALIDRESOURCE: 讀取指定資源失敗。
CButtonST::SetCheck
DWORD SetCheck(int nCheck, BOOL bRepaint = TRUE)
注釋:
當按鈕被當作CheckBox使用的時候,用來設定按鈕的狀態。
參數:
nCheck : 1表示選中; 0表示沒選中
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
CButtonST::SetColor
DWORD SetColor(BYTE byColorIndex, COLORREF crColor, BOOL bRepaint = TRUE)
注釋:
調用此函式可以設定按鈕在各種狀態下顯示指定的底色。
參數:
byColorIndex : 狀態索引值。具體含義可以參見OffsetColor函式中的參數(byColorIndex)說明。
crColor : 顏色值。設定按鈕指定狀態的底色。
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
BTNST_INVALIDINDEX: 無效的狀態索引值。
CButtonST::SetDefaultColors
DWORD SetDefaultColors(BOOL bRepaint = TRUE)
注釋:
調用此函式之後,程式將使用默認顏色來設定按鈕在各個狀態下的顏色。這些顏色值可能會因為Windows版本的不同而不同。
參數:
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
CButtonST::SetFlat
DWORD SetFlat(BOOL bFlat = TRUE, BOOL bRepaint = TRUE)
注釋:
調用此函式來設定按鈕的顯示風格。
參數:
bFlat: 值為TRUE則顯示為平面按鈕; 值為FALSE則顯示為標準的Windows按鈕
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
CButtonST::SetIcon
DWORD SetIcon(int nIconIn, int nIconOut = NULL)
DWORD SetIcon(HICON hIconIn, HICON hIconOut = NULL)
注釋:
調用此函式可以在按鈕上顯示指定的圖示(Icon)。如果對同一個按鈕重複調用了此函式的話,那么按鈕只顯示最後一次指定的圖示。
參數:
nIconIn : 圖示的ID值,當滑鼠指針移動到按鈕上面的時候顯示該圖示。如果該參數被賦值為 NULL ,則分配給這個按鈕的所有圖示資源將被釋放。
hIconOut: 圖示的ID值,當滑鼠指針不在按鈕上面的時候顯示該圖示。調用函式的時候可以忽略該參數。
hIconIn : 圖示的句柄,當滑鼠指針移動到按鈕上面的時候顯示該圖示。如果該參數被賦值為 NULL ,則分配給這個按鈕的所有圖示資源將被釋放。
hIconOut: 圖示的句柄,當滑鼠指針不在按鈕上面的時候顯示該圖示。調用函式的時候可以忽略該參數。
返回值:
BTNST_OK: 表示函式執行成功。
BTNST_INVALIDRESOURCE: 表示函式執行失敗,例如無法讀取指定的圖示資源。
CButtonST::SetMenu
DWORD SetMenu(UINT nMenu, HWND hParentWnd, BOOL bWinXPStyle = TRUE, UINT nToolbarID = NULL, CSize sizeToolbarIcon = CSize(16, 16), COLORREF crToolbarBk = RGB(255, 0, 255), BOOL bRepaint = TRUE)
DWORD SetMenu(UINT nMenu, HWND hParentWnd, BOOL bRepaint = TRUE)
注釋:
要調用此函式必須與BCMenu類一起使用。函式將為按鈕指派一個選單,當點擊按鈕的時候會彈出所指派的選單。此函式的調用與宏有關,如果在代碼中聲明了BTNST_USE_BCMENU 宏,則應該調用SetMenu函式的第一種形式,否則應該調用SetMenu的後一種形式。
參數:
nMenu : 選單的ID值。
hParentWnd: 選單所屬的視窗句柄。選單選項將觸發該視窗內的時間。
bWinXPStyle: 值為TRUE則會以XP風格顯示選單, 值為FALSE則會以標準風格顯示選單。
nToolbarID: 工具條的ID值。程式會將工具條中與選單項ID值相同圖片加入到選單中。
sizeToolbarIcon: 指定工具條中每一個圖示的大小,它是一個CSize 類型的實例。注意請確保工具條中所有圖示的大小一致。
crToolbarBk: 顏色值。工具條圖片中與該顏色相同的區域將顯示為透明。
bRepaint: 值為TRUE則馬上重繪按鈕。
返回值:
BTNST_OK: 函式執行成功。
BTNST_INVALIDRESOURCE: 無法讀取指定資源。
CButtonST::TooltipText
void SetTooltipText(int ntext, BOOL bActivate = TRUE)
void SetTooltipText(LPCTSTR lpszText, BOOL bActivate = TRUE)
注釋:
調用此函式可以為按鈕設定提示信息。
參數:
nText: 字元串的ID值。
lpszText: 所要顯示的字元串。
nActivate: 值為TRUE表示激活提示功能, 值為FALSE表示不激活提示功能。
CButtonST::SetURL
DWORD SetURL(LPCTSTR lpszURL = NULL)
注釋:
調用此函式後,單擊按鈕將打開參數所指定的連線。
參數:
lpszURL: 包含連結信息的字元串。
返回值:
BTNST_OK: 函式執行成功。