MFC Rich编辑控件2.0文本颜色

时间:2016-06-08 17:51:12

标签: c++ mfc sdi

我想这里的想法非常简单,但我似乎无法弄明白。基本上我所拥有的是一个MFC单视图应用程序,只有一个丰富的编辑控件2.0和一些文本。我们只要说这个控件说“请点击这里快进。”

libfftw3f.a

现在这段代码我只是大胆地说“这里”这个词就是我想要的。但除了粗体之外,我想将整个文本的颜色更改为红色。

我只需要看看如何将富编辑控件2.0中的文本转换为其他颜色。我浏览过stackoverflow和谷歌,很多关于这个的文件来自10年前+。

Here是最近提出的一个问题,我问同样的问题,除了他的帖子是一个巨大的代码片段,我真的不在乎。我已经尝试过使用

-lfftw3f

之前使用

CHARFORMAT cf = { sizeof(cf) };
cf.dwEffects = CFM_BOLD;
cf.dwMask = CFM_BOLD;
m_pMessageTextBox.SetSel(13, 17);
m_pMessageTextBox.SetSelectionCharFormat(cf);

没有任何改变,我认为在这种情况下,粗体字会同时是粗体和红色,但它只是保持黑色。

1 个答案:

答案 0 :(得分:3)

好的,所以我设法弄明白了,我的一个条件语句被破坏了,所以我的部分代码实际上从未被读过。对于遇到此问题的任何人来说,这就是我使用的:

CHARFORMAT cf = { sizeof(cf) };
cf.dwEffects = CFM_BOLD;
cf.dwMask = CFM_BOLD;
m_pMessageTextBox.SetSel(13, 17);
m_pMessageTextBox.SetSelectionCharFormat(cf);
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_COLOR;
cf.dwEffects = 0;
m_pMessageTextBox.SetSel(0, -1);
m_pMessageTextBox.SetSelectionCharFormat(cf); 

为此,我还没有机会玩它,只是为了看看我是否可以缩短它,但它现在按照我想要的方式工作。首先,它执行粗体属性并将其应用于文本,然后它执行文本颜色属性并将其从文本的开头应用到文本末尾。