怎样给CButton加上Bitmap?
我的Cbutton在CformView中,我想给它加上一个Bitmap,用Cbutton的SetBitmap函数在CFormView的OnDraw中给它加上一个Bitmap,但总是不成功.谁有办法?
问题点数:50、回复次数:6Top
1 楼wilson2000()回复于 2000-03-28 10:42:00 得分 5
cbutton has a style of owner-draw but the caption will be set as a rule.
the cbutton of this style can show its bitmap.
see details in vc++技术内幕.Top
2 楼LJN(没有人)回复于 2000-03-28 10:52:00 得分 15
需定义CBitmapButton 对象与CButton一一对应.
1. 在创建按钮资源IDC_BUTTON时选择 owner draw (自己画);
2. 在对话框.h文件内定义位图按钮对象 CBitmapButton mybutton;
3. 在对话框.c文件内创建 BOOL Dialog::OnInitDialog() {}
如果已有就不必创建;
4. 在Oninitdialog()中VERIFY(mybutton.AutoLoad(IDC_BUTTON,this));
5. 创建位图,其资源ID应与按钮字符相同为:"字符U","字符D","字符X"(分别对应释放,按下,无效. 引号也要打!)
Top
3 楼haihong()回复于 2000-03-28 11:14:00 得分 5
在www.codegugu.com上有个CbuttonST的类,直接拿来用就可以了Top
4 楼howker()回复于 2000-03-28 17:03:00 得分 5
LJN说的不错,
haihong说的CButtonST类我试过,好像不太好用,
不知道有没有其他较好的类.
关注中.Top
5 楼Hongshu(鸿哥)回复于 2000-03-28 17:29:00 得分 15
1. 使用CBitmapButton;
在Oninitdialog()调用
m_btnSearch.LoadBitmaps(IDB_SEARCHU, IDB_SEARCHD, IDB_SEARCHF, IDB_SEARCHX);
2. 自己生成一由CButton派生的CMyButton重载DrawItem(),在这里想干个么都行Top
6 楼wilson2000()回复于 2000-03-28 17:40:00 得分 0
ljn所言,再"vc++技术内幕"上有祥述Top




