VC颜色对话框
设置颜色对话框出初始选择的颜色,必须设置CC_RGBINIT标记.
mcc.Flags|=CC_RGBINIT.
设置CC_FULLOPEN可以让颜色对话框全部展开
mcc.Flags|=CC_RGBINIT|CC_FULLOPEN.
mcc.rgbResult保存了选择的颜色.
示例代码:
void CGraphicView::OnColor()
{
// TODO: Add your command handler code here
CColorDialog dlg;
dlg.m_cc.Flags|=CC_RGBINIT;
dlg.m_cc.rgbResult=m_clr;
if(IDOK==dlg.DoModal())
m_clr=dlg.m_cc.rgbResult;
}
VC字体对话框
lpLogFont指向了所选的字体.
DeleteObject可用来释放资源对象
VC改变对话框控件的背景及文本颜色
如果想改变控件的颜色,应该在控件的父类窗口上响应
OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
返回的画刷 就是其背景颜色
可以通过pWnd来判断ID 从而只改变某些控件的颜色.
VC显示位图资源
1、创建位图资源
2、定义CBitmap对象
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);
3、创建兼容DC
CDC dcCompatible;
dcCompatible.CreateCompatibleDC(pDC);
4、将位图选到兼容DC中
dcCompatible.SelectObject(&bitmap);
5、将兼容DC中的位图贴到当前DC中。
pDC->BitBlt(rect.left,rect.top,rect.Width(),rect.Height(),&dcCompatible,0,0,SRCCOPY);