问题标签 [richedit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4322 浏览

delphi - 在 RichEdit 中检测 URL 的点击

我正在尝试更新 RichEdit,以便它检测 URL 并启用单击它以在浏览器中打开。检测 URL 很容易,我只使用来自http://www.scalabium.com/faq/dct0146.htm的以下代码

但第二部分对我不起作用。他们提供以下代码来捕获 EN_LINK 消息并对其进行处理:

当我运行该程序时,会检测到 URL,但单击它不会执行任何操作。使用调试我发现当我单击 URL 时 Message.Msg = WM_NOTIFY 不正确。然后我尝试覆盖 TRichEdit 的 WndProc,但结果是一样的。有什么建议么?

0 投票
1 回答
764 浏览

windows - RichEdit 的 EM_AUTOURLDETECT 消息并不总是发送

为了描述这个问题,您最好使用以下用例测试我的应用程序:

应用程序:http ://ubuntuone.com/p/nF/

  1. 打开应用程序;
  2. 单击“>”标题按钮;
  3. 再次单击相同的按钮;
  4. 再次单击相同的按钮。

如您所见 - 在第一次扩展中正确检测到 URL,但在任何进一步扩展中都没有。

希望在您的帮助下解决此问题:)

目前,每次展开对话框时我都会发送 WM,但它仍然无法正常工作......

展开/折叠按钮代码片段:

在表单 OnCreate 事件中:

正如http://msdn.microsoft.com/en-us/library/bb787991%28VS.85%29.aspx文档所述,通过文本修改检测 URL,这意味着重新调用检测的唯一方法是发送某种消息添加/删除字符,但是:

按下键盘上的键后立即检测到 URL,并且只检测到 INSIDE 行。可能的修复将非常讨厌,因此我什至不认为为此开发代码 sinpp :) 想法:通过所有可用字符 Lopp,例如,添加 Char(#10) 然后删除 Char(#10)。缺点:想象一下 RichEdit 控件内的大型 RTF 文本会发生什么...

0 投票
2 回答
1015 浏览

winapi - RichEdit、winapi - 段落对齐

我想让一条线以这种方式对齐,一些第一个词左对齐,一些最后一个词右对齐,但都在同一行:

那可能吗?我怎样才能做到这一点?

0 投票
4 回答
5118 浏览

delphi - Delphi:通过滚动在 TRichEdit 中居中特定行

我有一个 Delphi 2007 TRichEdit,里面有几行。我想垂直滚动richedit,以使特定的行号大约位于richedit的可见/显示区域的中心。例如,我想在这个例子中为 CenterLineInRichEdit 编写代码:

我研究了使用 WM_VSCROLL 消息,它允许向上/向下滚动一行等,但不能滚动到特定行的中心。

0 投票
1 回答
836 浏览

richedit - riched32.dll 或riched20.dll 源代码

riched32.dll 或riched20.dll 的源代码是否在某处可用

如果不是 - 如果我想创建一个行为略有不同的 Richedit 文本字段,我该怎么办(比如更改滚动条的控件,这样我就可以从外部更改它们的大小和位置)

谢谢

0 投票
1 回答
1107 浏览

richedit - RichEdit 控件:确定何时更改文本?

我正在尝试计算给定 RichEdit 控件中文本更改的次数。我考虑过使用诸如按下键之类的事件,但是当您考虑不更改文本的键(如箭头、向上翻页等)时,这会变得很混乱。以及如何确保获得所有这些密钥?

如果一个事件存在,注册一个事件的回调似乎会更简单onTextChanged。有没有办法做这样的事情?

0 投票
2 回答
1281 浏览

delphi - 如何禁用拖放 TRichEdit 或 TRzRichEdit

如何阻止 TRichEdit 中的拖放?delphi 代码我使用 Rich Edit 并在阻止拖放功能方面遇到困难,特别是从表单外部拖动文本让我们说从 IE 到我的 RichEdit。

0 投票
1 回答
1992 浏览

c++ - VS2010中MFC模板项目的难点

我正在使用 Visual Studio 2010 来试验 MFC。

我按照向导创建了一个模板 MFC 项目。我选择了一个基于对话框的应用程序,并取消选中其他选项,如 ActiveX 控件。

没有进行任何代码更改后,我按 F5,应用程序运行。

然后,使用表单设计器,我将一个富编辑控件从工具箱拖到应用程序上。我再次按 F5,应用程序编译但立即以错误代码 0 退出。

为什么会发生这种情况?我究竟做错了什么?

这是包含 RichEdit 时的输出:

发生所有这些加载错误有点可疑。但是,如果出现问题,为什么它会以错误代码 0 退出?

这是成功运行的输出。加载失败仍然发生:

更新我删除了 RichEdit,并添加了这些其他控件,它工作正常:

  • MFC VSListBox 控件
  • 列表控件
  • MFC 链接控制
  • 网络地址控制

Tangent : 为什么 RichEdit2 是表单生成器中唯一可用的 RichEdit?(我在 Windows 7 上使用 VS 2010)

0 投票
1 回答
4318 浏览

delphi - 如何在 Delphi 中获取 RichEdit 的文本范围

有谁知道如何在 TRichEdit 控件中获取文本的宽度和高度,就像在 TCanvas 上使用 TextWidth 和 TextHeight 一样?

我需要知道这样做的原因是我在一个不可见的表单上有一个 RichEdit,我使用 Richedit.Perform(EM_FORMATRANGE, ...) 将其内容复制到画布。问题是 EM_FORMATRANGE 需要一个 TFormatRange 类型的参数,其中指定了目标矩形,但我不知道矩形应该是什么,因为我事先不知道 RichEdit 中内容的大小。希望这是有道理的。

0 投票
1 回答
371 浏览

mfc - 什么是文本对象模型中的“故事”?

本文档描述了 RichEdit 和 ITextDocument,它们是 MFC 的一部分。RichEdit 使用 TOM 或文本对象模型。该文档反复提到“故事”:

GetStoryCount 属性获取方法检索此文档中的故事数。

GetStoryRanges 属性获取方法检索用于枚举文档中的故事的故事集合对象。

在文档的其他地方,它是文档的度量单位,其进程如下:

字符>单词>句子>段落>故事>页面

但究竟什么是故事?