CButtonST使用技巧(一)

2021-07-25 10:18:37 字數 4316 閱讀 5284

出自:

本篇主要包括了以下的效果:

1. 在按鈕上加入icon,使icon和文字同時顯示

2. 顯示平面按鈕

3. 使按鈕上的圖示可變

4. 設定按鈕在不同狀態下的底色和文字顏色

5. 設定圖示和文字的位置

6. 根據icon的形狀設定按鈕的形狀

7. 新增tooltips

以下是basic features的演示介面:

效果一:在按鈕上加入icon,使icon和文字同時顯示

假設按鈕id為idc_button1

1. 新增成員變數

1

cbuttonst   m_btn;

2. 新增icon資源,設其id設為idi_icon1

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

1

2

3

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon1);

m_btn.setflat(false);

注意:為達到最好效果,請根據icon的大小調整按鈕的大小。

例項:演示程式中的standar 按鈕。

效果二:顯示平面按鈕

只需要在效果一的基礎上把m_btn.setflat(false);語句去掉。

效果三:使按鈕上的圖示可變

假設按鈕id為idc_button1

1. 新增成員變數

1

cbuttonst   m_btn;

2. 新增兩個icon資源,id設為idi_icon1和idi_icon2

idi_icon1是普通狀態的圖示,idi_icon2是按下時的圖示

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

1

2

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon2,idi_icon1);

例項:演示程式中的halloween 按鈕。 

效果四:設定按鈕在不同狀態下的底色和文字顏色

假設按鈕id為idc_button1

1. 新增成員變數

1

cbuttonst   m_btn;

2. 新增icon資源,設其id設為idi_icon1

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

1

2

3

4

5

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon1);

m_btn.setcolor(cbuttonst::btnst_color_bk_out, rgb(208,208,208));

m_btn.setcolor(cbuttonst::btnst_color_bk_focus, rgb(208,208,208));

m_btn.offsetcolor(cbuttonst::btnst_color_bk_in, 30);

12

3

4

5

6

btnst_color_bk_in//滑鼠放在按鈕內時的背景色

btnst_color_fg_in,//滑鼠放在按鈕內時的前景色

btnst_color_bk_out,//普通狀態時的背景色

btnst_color_fg_out,//普通狀態時的前景色

btnst_color_bk_focus,//按鈕被按下後的背景色

btnst_color_fg_focus,//按鈕被按下後的前景色

例項:演示程式中的48×48 icon 按鈕、zip按鈕等。

效果五:設定圖示和文字的位置

假設按鈕id為idc_button1

1.新增成員變數

1

cbuttonst   m_btn;

2.新增icon資源,id設為idi_icon1

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

1

2

3

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon1);

m_btn.setalign(cbuttonst::st_align_vert);

12

3

st_align_horiz// 文字在右

st_align_vert//文字在下

st_align_horiz_right// 文字在左

例項:演示程式中的search 按鈕。

效果六:根據icon的形狀設定按鈕的形狀

假設按鈕id為idc_button1

1.新增成員變數

1

cbuttonst   m_btn;

2.新增icon資源,設其id設為idi_icon1

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

1

2

3

4

5

6

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon1);

m_btn.drawborder(false);

m_btn.setcolor(cbuttonst::btnst_color_bk_out, rgb(208,208,208));

m_btn.setcolor(cbuttonst::btnst_color_bk_in, rgb(208,208,208));

m_btn.setcolor(cbuttonst::btnst_color_bk_focus, rgb(208,208,208));

注意:為達到最好效果,請根據icon的大小調整按鈕的大小。

並根據實際情況設定背景顏色。請事先將按鈕的文字去掉。

效果七:新增tooltips

假設按鈕id為idc_button1

1.新增成員變數

1

cbuttonst   m_btn;

2.新增icon資源,設其id設為idi_icon1

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

1

2

3

m_btn.subclassdlgitem(idc_button1,this);

m_btn.seticon(idi_icon1);

m_btn.settooltiptext(_t("this is a tooltip.\r\nmultiline!"));

(未完待續)

CButtonST使用技巧(一)

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

CButtonST使用技巧(一)

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

CButtonST 的使用技巧 一

效果一 在按鈕上加入icon,使icon和文字同時顯示 假設按鈕id為idc button1 1.新增成員變數cbuttonstm btn 2.新增icon資源,設其id設為idi icon1 3.在oninitdialog函式中初始化按鈕m btn.subclassdlgitem idc butt...