mfc 中怎么把设置到按钮上的bmp图片设为透明显示

 我来答
joychen_
2014-08-04 · TA获得超过1747个赞
知道大有可为答主
回答量:1617
采纳率:100%
帮助的人:1829万
展开全部
据我所知,只能使用BS_OWNERDRAW了,使用TransparentBlt。
更多追问追答
追问
这个怎么用呀,能发个具体的步骤吗
追答
// NOTE: CMyButton is a class derived from CButton. The CMyButton
// object was created as follows:
//
// CMyButton myButton;
// myButton.Create(_T("My button"), 
//      WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON|BS_OWNERDRAW, 
//      CRect(10,10,100,30), pParentWnd, 1);
//

// This example implements the DrawItem method for a CButton-derived 
// class that draws the button's text using the color red.
void CMyButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) 
{
   UINT uStyle = DFCS_BUTTONPUSH;

   // This code only works with buttons.
   ASSERT(lpDrawItemStruct->CtlType == ODT_BUTTON);

   // If drawing selected, add the pushed style to DrawFrameControl.
   if (lpDrawItemStruct->itemState & ODS_SELECTED)
      ...;
    TransparentBlt(lpDrawItemStruct->hDC, ......);
}

1. 从CButton派生一个类。
2. 创建按钮,指定 BS_OWNERDRAW
3. 重载DrawItem, 在 lpDrawItemStruct->hDC 上随便画。
lvronglee
2014-08-04 · 超过115用户采纳过TA的回答
知道小有建树答主
回答量:263
采纳率:0%
帮助的人:212万
展开全部
自己做按钮类就用cximage,自己画png图片上去。透明效果刚刚的。
追问
怎么做自己的按钮类呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式