VC 如何获取一个控件内的字体

我在对话框上放了一个RichText控件,在打开字体对话框的时候,能自动获取该控件的字体,并显示!我该如何做呢?... 我在对话框上放了一个RichText控件,在打开字体对话框的时候,能自动获取该控件的字体,并显示!我该如何做呢? 展开
 我来答
挚爱慧莹0143
2014-04-27 · TA获得超过109个赞
知道答主
回答量:129
采纳率:0%
帮助的人:124万
展开全部
void CMyRichEdit::OnSelectfont() { // TODO: Add your command handler code here CHARFORMAT cf; LOGFONT lf; memset(&cf, 0, sizeof(CHARFORMAT)); memset(&lf, 0, sizeof(LOGFONT)); //判断是否选择了内容 BOOL m_bSelect = (GetSelectionType() != SEL_EMPTY) ? TRUE : FALSE; if (m_bSelect) { GetSelectionCharFormat(cf); } else { GetDefaultCharFormat(cf); } //得到相关字体属性 BOOL bIsBold = cf.dwEffects & CFE_BOLD; BOOL bIsItalic = cf.dwEffects & CFE_ITALIC; BOOL bIsUnderline = cf.dwEffects & CFE_UNDERLINE; BOOL bIsStrickout = cf.dwEffects & CFE_STRIKEOUT; //设置属性 lf.lfCharSet = cf.bCharSet; lf.lfHeight = cf.yHeight/15; lf.lfPitchAndFamily = cf.bPitchAndFamily; lf.lfItalic = bIsItalic; lf.lfWeight = (bIsBold ? FW_BOLD : FW_NORMAL); lf.lfUnderline = bIsUnderline; lf.lfStrikeOut = bIsStrickout; sprintf(lf.lfFaceName, cf.szFaceName); CFontDialog dlg(&lf); dlg.m_cf.rgbColors = cf.crTextColor; if (dlg.DoModal() == IDOK) { dlg.GetCharFormat(cf);//获得所选字体的属性 if (m_bSelect) SetSelectionCharFormat(cf); //为选定的内容设定所选字体 else SetWordCharFormat(cf); //为将要输入的内容设定字体 } }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
于秋果半树贩蜂3205
2014-04-28 · TA获得超过117个赞
知道答主
回答量:143
采纳率:0%
帮助的人:202万
展开全部
你这个问题,我上次在 慧都控件网的技术文档里看到过,现在记不起了,你自己找找吧,这里是地址: http://www.evget.com/zh-CN/Info/List.aspx?key=47 而且最近他们还在搞免费的技术培训活动,你可以去看看,呵呵,免费的在线技术培训,地址是:
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式