Visual c++ 如何在MFC中用半透明笔刷填充矩形区域?

Visual c++ 如何在MFC中用半透明笔刷填充矩形区域?,visual-c++,mfc,gdi,Visual C++,Mfc,Gdi,我需要在mfc中用半透明颜色/笔刷填充矩形区域。我怎样才能做到这一点呢?你不能用半透明画笔来填充矩形,你需要使用或之类的东西来创建效果 此处提供了一个示例: 你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果 此处提供了一个示例: 你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果 此处提供了一个示例: 你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果 此处提供了一个示例: 我找到了解决办法。要用半透明笔刷填充矩形区域,我们需要使用对象 以下是示例代码: v

我需要在mfc中用半透明颜色/笔刷填充矩形区域。我怎样才能做到这一点呢?

你不能用半透明画笔来填充矩形,你需要使用或之类的东西来创建效果

此处提供了一个示例:


你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果

此处提供了一个示例:


你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果

此处提供了一个示例:


你不能用半透明画笔来填充矩形,你需要使用类似或的东西来创建效果

此处提供了一个示例:


我找到了解决办法。要用半透明笔刷填充矩形区域,我们需要使用对象

以下是示例代码:

void FillSemiTransparentRegion(CDC *pDC, CRect rc)
{
    if (pDC == NULL || rc.IsRectEmpty() || rc.IsRectNull())
        return;

    Graphics gr(pDC->GetSafeHdc());

    SolidBrush br(Color(100, 0, 0, 0));    // Alpha, Red, Blue, Green

    gr.FillRectangle(&br, rc.left, rc.right, rc.Width(), rc.Height());
}

我找到了解决办法。要用半透明笔刷填充矩形区域,我们需要使用对象

以下是示例代码:

void FillSemiTransparentRegion(CDC *pDC, CRect rc)
{
    if (pDC == NULL || rc.IsRectEmpty() || rc.IsRectNull())
        return;

    Graphics gr(pDC->GetSafeHdc());

    SolidBrush br(Color(100, 0, 0, 0));    // Alpha, Red, Blue, Green

    gr.FillRectangle(&br, rc.left, rc.right, rc.Width(), rc.Height());
}

我找到了解决办法。要用半透明笔刷填充矩形区域,我们需要使用对象

以下是示例代码:

void FillSemiTransparentRegion(CDC *pDC, CRect rc)
{
    if (pDC == NULL || rc.IsRectEmpty() || rc.IsRectNull())
        return;

    Graphics gr(pDC->GetSafeHdc());

    SolidBrush br(Color(100, 0, 0, 0));    // Alpha, Red, Blue, Green

    gr.FillRectangle(&br, rc.left, rc.right, rc.Width(), rc.Height());
}

我找到了解决办法。要用半透明笔刷填充矩形区域,我们需要使用对象

以下是示例代码:

void FillSemiTransparentRegion(CDC *pDC, CRect rc)
{
    if (pDC == NULL || rc.IsRectEmpty() || rc.IsRectNull())
        return;

    Graphics gr(pDC->GetSafeHdc());

    SolidBrush br(Color(100, 0, 0, 0));    // Alpha, Red, Blue, Green

    gr.FillRectangle(&br, rc.left, rc.right, rc.Width(), rc.Height());
}
gr.FillRectangle(&br,rc.left,rc.top,rc.Width(),rc.Height());gr.FillRectangle(&br,rc.left,rc.top,rc.Width(),rc.Height());gr.FillRectangle(&br,rc.left,rc.top,rc.Width(),rc.Height());gr.FillRectangle(&br,rc.left,rc.top,rc.Width(),rc.Height());