我遇到了一个关于CRichEditCtrl的问题。我想使用表格来格式化生成的文本以进行显示。在rtf 1.5 specs中,它说我必须指定一个表格边框来显示任何内容,但显然是CRichEditCtrl的一些默认设置设置了它们。
这段代码:
CString sDoc =_T("{\\rtf1\\ansi\\deff0"
"\\trowd\\trgaph144 "
"\\cellx500"
"\\cellx3000"
"\\cellx5000"
"\\cellx7000"
"\\intbl 01 \\cell"
"\\intbl Hexachlorbenzol \\cell"
"\\intbl 500.00 mg \\cell"
"\\intbl WST \\cell"
"\\row"
"}");
EDITSTREAM es;
es.dwCookie = (DWORD)&sDoc;
es.pfnCallback = MEditStreamInCallback;
edtInfo.StreamIn(SF_RTF, es);结果如下:

我已经尝试将单元格的边框宽度设置为0,并将边框颜色设置为白色为0。
"\\clbrdrt\\brdrw0\\clbrdrl\\brdrw0\\clbrdrb\\brdrw0\\clbrdrr\\brdrw0"或
"\\clbrdrt\\brdrcf0\\clbrdrl\\brdcf0\\clbrdrb\\brdrcf0\\clbrdrr\\brdrcf0"这两种方式都不起作用。结果总是一样的。
也许这里有人知道如何禁用此默认边框。我想禁用或隐藏此边框。也许在控件中有一个设置,我还没有发现。
发布于 2015-12-05 15:40:42
Rich Edit 3控件始终显示带边框的表格。如果你想控制边界,你可以升级你的代码使用Rich Edit4.1。如果你对表格做了很多工作,你会发现Rich Edit4.1要好得多。它支持单元格中的多个段落,单元格中的文本对齐等。
有关要加载的DLL和Rich Edite4.1的类名,请参阅https://msdn.microsoft.com/en-us/library/windows/desktop/bb787873%28v=vs.85%29.aspx。Rich Edit4.1可在Windows XP SP1及更高版本上使用。有关不同版本的详细信息,请参阅http://blogs.msdn.com/b/murrays/archive/2006/10/14/richedit-versions.aspx
https://stackoverflow.com/questions/27958792
复制相似问题