📄 subject_15873.htm
字号:
<p>
序号:15873 发表者:丁旭 发表日期:2002-09-23 12:36:05
<br>主题:怎样修改默认的背景颜色
<br>内容:请问我要修改文档界面的默认背景色该怎么办。那灰色有点老掉牙了:(
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:Norton AntivVirus 回复日期:2002-09-23 12:37:38
<br>内容:文档界面的背景不是白色的吗?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:丁旭 回复日期:2002-09-23 12:39:39
<br>内容:不清楚,灰白的吧,说不清。反正我想换掉它,换个好看点的,帮忙教教我吧。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:凯凯 回复日期:2002-09-23 12:55:51
<br>内容:Windows向窗口发送一个WM_ERASEBKGND消息通知该窗口擦除背景,可以使用ClassWizard重载该消息的缺省处理程序来擦除背景(实际是画),并返回TRUE以防止Windows擦除窗口。<BR>//Paint area that needs to be erased.<BR>BOOL CSampleView : : OnEraseBkgnd (CDC* pDC)<BR>{<BR>// Create a pruple brush.<BR>CBrush Brush (RGB (128 , 0 , 128) )<BR>// Select the brush into the device context .<BR>CBrush* pOldBrush = pDC—>SelcetObject (&brush)<BR>// Get the area that needs to be erased .<BR>CRect reClip<BR>pDC—>GetCilpBox (&rcClip)<BR>//Paint the area.<BR>pDC—> PatBlt (rcClip.left , rcClip.top , rcClip.Width ( ) , rcClip.Height( ) , PATCOPY )<BR>//Unselect brush out of device context .<BR>pDC—>SelectObject (pOldBrush )<BR>// Return nonzero to half fruther processing .<BR>return TRUE<BR>}<BR>--摘自VC知识库
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Norton AntivVirus 回复日期:2002-09-23 12:58:51
<br>内容:你是指什么地方,工具栏,还是View区域?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:丁旭 回复日期:2002-09-23 13:11:23
<br>内容:指view区域
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Norton AntivVirus 回复日期:2002-09-23 13:17:08
<br>内容:在PreCreateWindow中:<BR>加入:<BR>cs.lpszClass = AfxRegisterWndClass(0, AfxGetApp()->LoadStandardCursor(IDC_CROSS), HBRUSH(LTGRAY_BRUSH), 0);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:徐景周 回复日期:2002-09-23 13:41:49
<br>内容:如下面例码:<BR>// ---------------------------------------------------------------------------<BR>// 名称: OnDraw<BR>// 功能: 填充背景色及绘制3D文字LOGO<BR>// 作者: 徐景周(jingzhou xu)<BR>// 组织: 未来工作室(Future Studio)<BR>// ---------------------------------------------------------------------------<BR>void CXPEasterEggView::OnDraw(CDC* pDC)<BR>{<BR> CXPEasterEggDoc* pDoc = GetDocument();<BR> ASSERT_VALID(pDoc);<BR><BR> //新建图件时,填充默认底色<BR> CRect rcClient;<BR> pDC->GetClipBox(rcClient); //获取需刷新的逻辑坐标区域<BR> rcClient.NormalizeRect();<BR> if (rcClient.IsRectEmpty()) //不需刷新时直接返回<BR> return;<BR><BR> //绘制客户区的底色<BR> CBrush brush;<BR> brush.CreateSolidBrush(0x808080);<BR> pDC->FillRect(rcClient, &brush);<BR> brush.DeleteObject();<BR><BR> //绘制3D文字Logo<BR> CFont m_LogoFont;<BR> CString sLogoString;<BR> <BR> m_LogoFont.CreateFont(36, 0, 0, 0, FW_BOLD, 1, FALSE, FALSE,<BR> DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,<BR> FIXED_PITCH | FF_ROMAN, "楷体_GB2312");<BR> <BR> sLogoString = "未来工作室";<BR> <BR> RECT rect,m_rDataBox;<BR> GetClientRect(&rect);<BR> CopyRect(&m_rDataBox,&rect);<BR> <BR> TEXTMETRIC tm;<BR> pDC->GetTextMetrics(&tm);<BR> CFont* oldFont = pDC->SelectObject(&m_LogoFont);<BR> CSize sz = pDC->GetTextExtent(sLogoString, sLogoString.GetLength());<BR><BR> //用GetTextExtent来计算字体logo大小,依靠于设备环境,使用logo位于右下角<BR> m_rDataBox.left = m_rDataBox.right - sz.cx - tm.tmAveCharWidth/2;<BR> m_rDataBox.top = m_rDataBox.bottom - sz.cy - tm.tmHeight/5;<BR> pDC->SetBkMode(TRANSPARENT);<BR><BR> //用3D字体显示,先黑后白,最后再用默认色<BR> COLORREF oldColor = pDC->SetTextColor(GetSysColor(COLOR_3DDKSHADOW));<BR> pDC->DrawText(sLogoString, sLogoString.GetLength(), &m_rDataBox, DT_VCENTER | DT_SINGLELINE | DT_CENTER);<BR> m_rDataBox.left -= tm.tmAveCharWidth;<BR> pDC->SetTextColor(GetSysColor(COLOR_3DHILIGHT));<BR> pDC->DrawText(sLogoString, sLogoString.GetLength(), &m_rDataBox, DT_VCENTER | DT_SINGLELINE | DT_CENTER);<BR> m_rDataBox.left += 3*tm.tmAveCharWidth/5;<BR> pDC->SetTextColor(RGB(0,0,255));<BR> pDC->DrawText(sLogoString, sLogoString.GetLength(), &m_rDataBox, DT_VCENTER | DT_SINGLELINE | DT_CENTER);<BR> <BR> //释放资源<BR> pDC->SelectObject(oldFont);<BR> pDC->SetTextColor(oldColor); <BR> m_LogoFont.DeleteObject();<BR>}<BR><BR>可参看下面网址中的例码:<BR>http://www.copathway.com/itbookreview/view_paper.asp?paper_id=317
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:丁旭 回复日期:2002-09-23 13:51:53
<br>内容:好,今天再试试吧,有这么多人帮我,好幸福啊,呵呵,5555555555
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -