CButtonST 的使用技巧 三

2021-04-13 08:57:29 字數 1349 閱讀 5989

本篇將向大家介紹兩個cbuttonst的派生類。

一、cwinxpbuttonst類

cwinxpbuttonst類 是乙個cbuttonst的派生類。它的特點是使用了windowsxp中的圓角、黑色邊框的風格。它包括winxpbuttonst.h和winxpbuttonst.cpp兩個檔案,而由於它是從cbuttonst派生而來的,所以在引用它時,也要一併引入cbuttonst的檔案。

使用:1. 引入檔案,新增檔案

2. 匯入檔案後,在sdtafx.h檔案中新增

#include "winxpbuttonst.h"
3. 新增成員變數
cwinxpbuttonst  m_btn2;
4. 假設按鈕id為idc_button

新增icon資源,id設為idi_icon1

5. 在oninitdialog函式中初始化按鈕

m_btn2.subclassdlgitem(idc_button,this);m_btn2.seticon(idi_icon1);m_btn2.setrounded(true);
注意:但是它存在乙個不足的地方,就是按鈕的圓角是畫出來的,按鈕的形狀仍然是原來的矩形。所以如果在有背景色的視窗中使用該按鈕的話就會顯得相當礙眼。

如圖所示,在黑色的背景色中顯示出難看的尖角:

解決的辦法是通過setcolor函式使得按鈕的底色與視窗的底色一致。

二、cshadebuttonst類

cshadebuttonst類 是cbuttonst的另乙個派生類。它的特點是支援更為多樣化的背景,通過setshade函式可以為按鈕設定9種不通的背景效果。它包括四個檔案,它們分別是cexdib.h、cexdib.cpp、shadebuttonst.h和shadebuttonst.cpp。在引用它時,同樣要一併引入cbuttonst的檔案。

使用:1.引入檔案,新增檔案

2.匯入檔案後,在sdtafx.h檔案中新增

#include "shadebuttonst.h"
3.新增成員變數
cshadebuttonstm_btn3;
4.假設按鈕id為idc_button3

新增icon資源,id設為idi_icon1

5.在oninitdialog函式中初始化按鈕

m_btn3.subclassdlgitem(idc_button3,this);m_btn3.seticon(idi_icon1);m_btn3.setshade(cshadebuttonst::shs_metal);

摘自:http://www.itlove.net/article/203/205/562/2005/20051120103509.html

CButtonST使用技巧(三)

cbuttonst使用技巧 二 本篇將向大家介紹兩個cbuttonst的派生類。一 cwinxpbuttonst類 cwinxpbuttonst類 是乙個cbuttonst的派生類。它的特點是使用了windowsxp中的圓角 黑色邊框的風格。它包括winxpbuttonst.h和winxpbutto...

CButtonST使用技巧(一)

cbuttonst使用技巧 一 本篇主要包括了以下的效果 1.在按鈕上加入icon,使icon和文字同時顯示 2.顯示平面按鈕 3.使按鈕上的圖示可變 4.設定按鈕在不同狀態下的底色和文字顏色 5.設定圖示和文字的位置 6.根據icon的形狀設定按鈕的形狀 7.新增tooltips 以下是basic...

CButtonST使用技巧(二)

cbuttonst使用技巧 二 cbuttonst使用技巧 一 介紹了cbuttonst使用的7種技巧,本篇主要包括了以下的效果 1.改變滑鼠進入按鈕時的形狀 超連結效果 2.選單按鈕 3.位圖按鈕 4.按鈕焦點 5.checkbox按鈕 6.透明按鈕 按鈕背景和視窗背景一樣 7.特殊的pictur...