出自:
本篇主要包括了以下的效果:
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...