高分求助!怎么改变对话框的背景色?

llb2000 2003-03-16 09:29:56
如果不能,那怎么用一幅bmp图作为背景图?
多谢,很急,如果分不够,还可再加,只要解决。
...全文
59 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
用户 昵称 2003-03-16
  • 打赏
  • 举报
回复
BOOL CMyDlg::OnEraseBkgnd (CDC* pDC)
{
// Create a pruple brush.
CBrush Brush (RGB (128 , 0 , 128) )

// Select the brush into the device context .
CBrush* pOldBrush = pDC—>SelcetObject (&brush)

// Get the area that needs to be erased .
CRect reClip
pDC—>GetCilpBox (&rcClip)
//Paint the area.
pDC—> PatBlt (rcClip.left , rcClip.top , rcClip.Width ( ) , rcClip.Height( ) , PATCOPY )

//Unselect brush out of device context .
pDC—>SelectObject (pOldBrush )

// Return nonzero to half fruther processing .
return TRUE
}
Kitfox AI 2003-03-16
  • 打赏
  • 举报
回复
是SetDialogBkColor,不过这会把所有的dialog都设置为同一个颜色。
void SetDialogBkColor( COLORREF clrCtlBk = RGB(192, 192, 192), COLORREF clrCtlText = RGB(0, 0, 0) );
Parameters
clrCtlBk
The dialog background color for the application.
clrCtlText
The dialog control color for the application.

1.显示程序中的位图资源。(假设位图资源ID为:IDB_BITMAP)
代码段:
CBitmap m_bm; //存储位图位图类
CClientDC m_dc(this); //作图窗口的DC
CDC m_dcMem; //存储位图的DC
m_bm.LoadBitmap(IDCB_BITMAP);
dcMem.CreateCompatileDC(&m_dc);
m_dc.BitBlt(0,0,100,100,&m_dcMem,0,0,SRCCOPY);
2.动态显示部位图文件。(假设置外部的位图路径为m_ImgPath)
CDC dcMem;
CClientDC m_dc(this);
HBITMAP hbmpOld;
CRect m_Rect(0,0,600,600);//设定位图的作区
// 显示位图的实际大小.
hbmpOld=(HBITMAP)LoadImage(0,m_ImgPath,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_DEFAULTSIZE);
// 若要设定位图的高和宽(m_ImgH,m_ImgW)则用下面的语句
// hbmpOld=(HBITMAP)LoadImage(0,m_ImgPath,IMAGE_BITMAP,m_ImgH,m_ImgW,LR_LOADFROMFILE);
dcMem.CreateCompatibleDC(m_dc);
hbmpOld=(HBITMAP)dcMem.SelectObject(hbmpOld);
m_dc->BitBlt(0,0,m_Rect->Width(),m_Rect->Height(),&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(hbmpOld);
anjy 2003-03-16
  • 打赏
  • 举报
回复
http://www.vckbase.com/bbs/prime/viewprime.asp?id=96
anjy 2003-03-16
  • 打赏
  • 举报
回复
http://www.vckbase.com/bbs/prime/viewprime.asp?id=29
akiy 2003-03-16
  • 打赏
  • 举报
回复
可以直接改背景
载app::InitInstance()
中setdialogbkgroundcolor()//好像是这个,工程中所有对话框都变色了
贴图
载对话框onpaint中
CPaintDC dc(this);
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAPBKGROUND);
CDC memDC;
memDC.CreateCompatibleDC(NULL);
CBitmap *oldbmp=memDC.SelectObject(&bmp);
dc.BitBlt(0,0,400,200,&memDC,0,0,SRCCOPY);
memDC.SelectObject(oldbmp);
memDC.DeleteDC();
bmp.DeleteObject();
CDialog::OnPaint();
内容概要:本文围绕“单相逆变器闭环逆变电路PWM模型仿真研究”展开,基于Simulink平台构建单相逆变器的闭环控制系统仿真模型,重点研究PWM调制技术在逆变电路中的应用与实现。文中详细阐述了系统架构设计、电压电流双闭环控制策略的实现原理、控制器参数设计及仿真建模全过程,并通过仿真结果验证了控制方案在动态响应、稳态精度与系统稳定性方面的有效性。同时,文档还涵盖多种电力电子系统典型应用场景,如多类型短路故障仿真(中性点不接地、经小电阻接地、经消弧线圈接地等)、软开关技术、微电网能量管理、MPPT控制等,体现出较强的技术综合性和工程实践价值。; 适合人群:电气工程、自动化、电力电子与新能源等相关专业的高校本科生、研究生、科研人员,以及从事电力系统仿真、逆变器设计与新能源并网技术研发的工程技术人员。; 使用场景及目标:①掌握基于Simulink的单相逆变器闭环控制系统建模与PWM仿真方法;②深入理解双闭环控制、SPWM/SVPWM调制、系统稳定性分析等核心技术原理;③为课程设计、毕业设计、科研项目或实际工程开发提供可复用的仿真模型与技术支持; 阅读建议:建议结合文中仿真模型动手实践,重点掌握PI控制器参数整定、PWM信号生成机制与仿真结果分析方法,同时可延伸学习文档中涉及的软开关、故障仿真、微电网控制等关联技术,以拓展系统级设计能力。

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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