对话框中如何设定静态文本和编辑框的字体和背景颜色?
解决方案 »
- [求助] 串口API读取出数据,但memcpy后就不对了
- 在程序中实现连接VC6.0的功能
- 我插入WORD文档的OCX控件在设计模式时界面无法显示出来,如何解决?
- 请问:关于 DLL、Singleton 和 STL 的问题,谢谢!
- 怎么实现不了!!!!!!!!!!!!!!!
- 如何使窗口最大化显示?
- 请问:pps是何文件?如何打开?
- 这个论坛里,有做头发生成的高人么,或者是了解过这方面知识的?
- 来者有分!人员招聘时,编程经验与编程风格相比哪个更重要,应该选谁?
- 如何将国密算法封装成DLL供其他语言调用,100分求助
- 关于CDaoRecordset在回调函数中应用的问题
- 怎样用SQL向Access数据库中添加一个字符串字段,字符串属性为允许空字符串?
{
CDialog::OnInitDialog();
m_Brush=CreateSolidBrush(RGB(30,180,180));
/............................
void CDlgGrant::OnButtonShow()
{
m_ListCtrl.DeleteAllItems();
m_ListCtrl.SetTextColor(RGB(100,0,100));
m_ListCtrl.SetTextBkColor(RGB(240,247,233));
gb_set.Open();
int i=0;***********希望对楼主有些启示
HBRUSH CTest6Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); switch(nCtlColor) { case CTLCOLOR_EDIT: if(pWnd->GetDlgCtrlID() == IDC_EDIT1) { static HBRUSH hbrEdit = ::CreateSolidBrush( RGB(255, 0, 0) ); pDC->SetBkMode(TRANSPARENT); pDC->SetTextColor( RGB(0, 255, 0) ); return hbrEdit; }
} // TODO: Return a different brush if the default is not desired return hbr;}
//头文件
/*===========================================================================
==== ====
==== File name : StaticTrans.h ====
==== Creation date : 7/10/2001 ====
==== Author(s) : Dany Cantin ====
==== ====
===========================================================================*/#ifndef STATICTRANS_H
#define STATICTRANS_H#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
/////////////////////////////////////////////////////////////////////////////
// CStaticTrans window#define TRANS_BACK -1class CStaticTrans : public CStatic
{
// Construction
public:
CStaticTrans();
private:
COLORREF m_TextColor;
COLORREF m_BackColor;
CBrush m_Brush;
// Operations
public:
void SetTextColor(COLORREF col) { m_TextColor = col;
UpdateCtrl(); }
void SetBackColor(COLORREF col) { m_BackColor = col;
UpdateCtrl(); }private:
void UpdateCtrl();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CStaticTrans)
//}}AFX_VIRTUAL// Implementation
public:
virtual ~CStaticTrans();// Generated message map functions
protected:
//{{AFX_MSG(CStaticTrans)
afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);
//}}AFX_MSGDECLARE_MESSAGE_MAP()
};
#endif // STATICTRANS_H
==== ====
==== File name : StaticTrans.cpp ====
==== Creation date : 7/10/2001 ====
==== Author(s) : Dany Cantin ====
==== ====
===========================================================================*/#include "stdafx.h"
#include "StaticTrans.h"#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif/////////////////////////////////////////////////////////////////////////////
// CStaticTransCStaticTrans::CStaticTrans()
{
m_TextColor = RGB(0, 0, 0);
m_BackColor = TRANS_BACK;
}CStaticTrans::~CStaticTrans()
{
}
BEGIN_MESSAGE_MAP(CStaticTrans, CStatic)
//{{AFX_MSG_MAP(CStaticTrans)
ON_WM_CTLCOLOR_REFLECT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////
// CStaticTrans message handlersHBRUSH CStaticTrans::CtlColor(CDC* pDC, UINT nCtlColor)
{
m_Brush.DeleteObject();
if (m_BackColor == TRANS_BACK) {
m_Brush.CreateStockObject(HOLLOW_BRUSH);
pDC->SetBkMode(TRANSPARENT);
}
else {
m_Brush.CreateSolidBrush(m_BackColor);
pDC->SetBkColor(m_BackColor);
}
pDC->SetTextColor(m_TextColor);
return (HBRUSH)m_Brush;
}void CStaticTrans::UpdateCtrl()
{
CWnd* pParent = GetParent();
CRect rect;
GetWindowRect(rect);
pParent->ScreenToClient(rect);
rect.DeflateRect(2, 2);
pParent->InvalidateRect(rect, FALSE);
}