VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1709|回复: 12

新手提问:为什么把图片做为背景后,上面的listbox或者按钮,看不到,点一下才能显示

[复制链接]

2

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-1-7 00:30:01 | 显示全部楼层 |阅读模式
新手提问:为什么把图片做为背景后,上面的listbox或者按钮,看不到,点一下才能显示,其它窗口再盖上去就又看不到,请问是怎么回事,要如何解决!
回复

使用道具 举报

0

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-7 12:42:01 | 显示全部楼层
我也遇到类似的问题,不知道怎样解决,请高手指教!!!!
回复

使用道具 举报

2

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
 楼主| 发表于 2020-1-19 15:09:02 | 显示全部楼层
顶上去啊,怎么没有高手啊
回复

使用道具 举报

1

主题

15

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-1-19 17:54:01 | 显示全部楼层
你是怎么操作的,背景图是怎么贴上的,能贴代码吗?
回复

使用道具 举报

2

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
 楼主| 发表于 2020-1-20 17:27:01 | 显示全部楼层
我是在VC里加入一个图片控件
但不知道如何设置为最底层
回复

使用道具 举报

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-1-20 18:00:02 | 显示全部楼层
HBRUSH CAaaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
        HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
       
        //设置透明背景模式
        pDC->SetBkMode(TRANSPARENT);
        //设置背景刷子为空
        return (HBRUSH)::GetStockObject(HOLLOW_BRUSH);
}
回复

使用道具 举报

2

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
 楼主| 发表于 2020-1-21 05:45:01 | 显示全部楼层
能解释一下吧
回复

使用道具 举报

1

主题

15

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-1-24 20:27:01 | 显示全部楼层
把图片控件的tab order设置为最小,即第一个,这就它就在最低层了。
回复

使用道具 举报

2

主题

9

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
 楼主| 发表于 2020-1-27 20:09:01 | 显示全部楼层
不行好还是一样
回复

使用道具 举报

1

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-1-28 17:36:02 | 显示全部楼层
BOOL CAaaDlg::OnInitDialog()
{
        CDialog::OnInitDialog();
        //加载位图
        m_Back.LoadBitmap(IDB_BITMAP1);
       
        return TRUE;  // return TRUE  unless you set the focus to a control
}

BOOL CAaaDlg::OnEraseBkgnd(CDC* pDC)
{
        CDC dc;
        dc.CreateCompatibleDC(pDC);
        dc.SelectObject(&m_Back);

        //获取BITMAP对象
        BITMAP hb;
        m_Back.GetBitmap(&hb);

        //获取窗口大小
        CRect rt;
        GetClientRect(&rt);
        //显示位图
        pDC->StretchBlt(0, 0, rt.Width(), rt.Height(),
                &dc, 0, 0, hb.bmWidth, hb.bmHeight, SRCCOPY);

        return TRUE;       
//        return CDialog::OnEraseBkgnd(pDC);
}

HBRUSH CAaaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
        HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
       
        //设置透明背景模式
        pDC->SetBkMode(TRANSPARENT);
        //设置背景刷子为空
        return (HBRUSH)::GetStockObject(HOLLOW_BRUSH);
}

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表