怎么样在对话框上贴位图啊!!·!¥—……%¥#·¥¥#

xxx94x 2003-02-27 01:43:00
我响应了WM_ERASEBKGND的消息
我的对话框上有N多个控件
启动的时候每加载一个控件,背景都重绘一次,而且特别慢,不断的闪啊闪,我怎么能让他不闪呢
...全文
80 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
曾经的猎狐 2003-03-12
  • 打赏
  • 举报
回复
非常感谢楼上的
ensionhower 2003-02-28
  • 打赏
  • 举报
回复
CBitmap bitmap;//在Dlg中的共有变量
//在InitDialog中作其初始化

bitmap.LoadBitmap(IDB_YOURBITMAP);
}
在OnPaint中
{if (IsIconic())
{
CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDC * pDC;
pDC = new CDC;
pDC = GetDC();
CDC scrdc;
scrdc.CreateCompatibleDC(pDC);
BITMAP bit;
CBitmap bitmap;
bitmap.GetBitmap(&bit);
scrdc.SelectObject(&bitmap);
BitBlt(pDC,0,0,bit.bmWidth,bit.bmHeight,&scrdc,0,0,SRCCOPY);
scrdc.ReleaseDC();
CDialog::OnPaint();
}
konfyt 2003-02-28
  • 打赏
  • 举报
回复
mark
曾经的猎狐 2003-02-28
  • 打赏
  • 举报
回复
up
曾经的猎狐 2003-02-28
  • 打赏
  • 举报
回复
就是帖背景图,,不是局部贴图
怎么弄
简单释仪一下代码好吗?
newsb 2003-02-28
  • 打赏
  • 举报
回复
如果你是为了贴对话框的背景图,最好还是用位图刷子
如果你只是在某个地方显示位图,还是在OnPaint()里面做
曾经的猎狐 2003-02-28
  • 打赏
  • 举报
回复
在顶上去
曾经的猎狐 2003-02-28
  • 打赏
  • 举报
回复
up
曾经的猎狐 2003-02-28
  • 打赏
  • 举报
回复
OnDraw()
函数在对话框里怎么才能响应到啊,我也想响应OnDraw啊
lookingsky 2003-02-28
  • 打赏
  • 举报
回复
我在做界面显示位图时,遇到一个这样的问题。我要显示的位图。程度开始运行时不存在的。在程序的运行过程中产生的。那我要在程序运行中输入这个位图的名称,这张位图就能显示出来。要怎么做呢?请各位大虾帮忙一下,谢谢!!
KcSoft 2003-02-28
  • 打赏
  • 举报
回复
我响应了WM_ERASEBKGND的消息;

当然会闪了,WM_ERASEBKCND的消息可以说随时都在执行,
响应OnDraw()函数吧.OnDraw()不会闪.
newsb 2003-02-28
  • 打赏
  • 举报
回复
Dlg.h
CBrush m_brBk;

Dlg.cpp
在OnInitialUpdate()中
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP);
m_brBk.CreatePatternBrush(&bmp);
bmp.DeleteObject();

在OnCtlColor()中添加
if (pWnd == this)
{
return m_brBk;
}

这样就可以实现了背景图了


Pipi0714 2003-02-27
  • 打赏
  • 举报
回复
你如何贴的图,我做的时候没有你说的这种情况,但是我遇到过这样的情况,比如说我的程序失去焦点再得到焦点的时候出现问题但是经过我修改以后没有这样的现象。你能把你贴图的代码写出来看一看

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧