在我的 MFC 应用程序中,我在 CScrollView 中逐行显示文本。现在的新要求是以 html 格式显示文本(有时是图像),保留所有效果,例如粗体、斜体等。我知道我可以使用 CHtmlView 来显示 html 文件,但我需要逐行显示存储在内存中的文本。是否可以?
谢谢,
德米特里
最佳答案
不可能简单地在内存字符串中生成 HTML 并将其插入 CHtmlView。
我们的解决方案(效果很好)是生成一个临时 html 文件(在 Windows 临时目录中)并将 CHtml View 导航到该文件。原则上:
OurTempFileClass theTempFile;
theTempFile.GetStream()->Put(mHTMLString.Get(), mHTMLString.GetLength());
CHtmlCtrl theHtmlCtrl;
theHtmlCtrl.Navigate2(theTempFile->GetFullPath());
(这是伪代码,因为我们不使用 stdlib c++ 类。
关于visual-c++ - 使用 CHtmlView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6144824/