您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> VC/MFC >> API中怎样设置edit中文字的字体和颜色

API中怎样设置edit中文字的字体和颜色

来源:网络整理     时间:2016/7/3 19:19:10     关键词:

关于网友提出的“ API中怎样设置edit中文字的字体和颜色”问题疑问,本网通过在网上对“ API中怎样设置edit中文字的字体和颜色”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: API中怎样设置edit中文字的字体和颜色
描述:

API中怎样设置edit中文字的字体和颜色,我用
                           HWND hwndedit;
hwndedit = GetDlgItem(hwnd,IDC_EDITtext);
hdc = GetDC(hwndedit);
cc.lStructSize = sizeof(CHOOSECOLOR);
cc.lpCustColors = &crf;
cc.Flags = CC_FULLOPEN;
ChooseColor(&cc);
SetBkMode(hdc,TRANSPARENT);
SetTextColor(hdc,cc.rgbResult);
TextOut(hdc,0,0,TEXT("hello"),strlen("hello"));
ReleaseDC(hwndedit,hdc);
虽然没有错误,但在edit里没有内容


解决方案1:

不要忙着说你的代码不起作用,Edit会不断的刷新(如果窗口需要重绘的话),所以把你的代码放在一个循环执行的函数里面试试

解决方案2:

WM_CTLCOLOREDIT 

解决方案3:

例子:
CSelEdit::CSelEdit()
{
m_bHasF />         , ANSI_CHARSET, OUT_TT_PRECIS, CLIP_TT_ALWAYS, PROOF_QUALITY
        , VARIABLE_PITCH | FF_SWISS, TEXT("SANS SERIF"));
}
CSelEdit::~CSelEdit()
{
if(m_bHasFont) DeleteObject(m_FontBold);
}
//WM_CTLCOLOR
HBRUSH CDrawEditDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if((CTLCOLOR_EDIT==nCtlColor) && (*pWnd == m_SelEdit))
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(0xFF);//red
return (HBRUSH)m_pbrEd->m_hObject;
}
return hbr;
}

解决方案4:

WM_CTLCOLOR(..)
OnCtlColor()
pDC->SetTextColor
pDC_SetBkMode
...


以上介绍了“ API中怎样设置edit中文字的字体和颜色”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2251861.html

相关图片

相关文章