问题标签 [trichedit]
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.
delphi - 为什么 EM_SETTEXTMODE 不起作用?
我正在尝试在 Delphi 7 中使用控件EM_SETTEXTMODE
。RichEdit
只需创建一个新项目,添加一个TRichEdit
控件和一个TButton
控件,并将以下代码添加到按钮的单击处理程序中:
单击按钮后,按钮的标题设置为38 0 38
,这意味着文本模式根本没有改变 - 最初是38
( TM_RICHTEXT or TM_SINGLELEVELUNDO or TM_MULTICODEPAGE
),然后SETTEXTMODE
是成功 ( 0
),但即使在那之后它仍然是38
。
按照文档的建议,RichEdit
在使用之前清除 's 文本。EM_SETTEXTMODE
我尝试过设置不同的值,EM_SETTEXTMODE
它总是保持不变38
。
我注意到即使控件在调用之前包含文本,它也EM_SETTEXTMODE
总是返回(成功)。0
RichEdit
我尝试使用RichEdit1.Perform
而不是SendMessage
- 没有区别。
我在各种论坛上找到了几个关于这个问题的帖子,但没有一个问题得到解决。
知道为什么这不起作用吗?
delphi - 如何将特定行从一个 TRichEdit 控件复制到另一个?
我是 delphi 的新手,我试图弄清楚如何将特定的行(而不是完整的文本)从一个richtextbox 加载到另一个。
delphi - 如何在 Delphi 中更改 RichEdit 的字体平滑(抗锯齿)质量?
我有一个Delphi 7应用程序,我在其中将文本绘制到TBitmap
. 我需要能够控制文本的抗锯齿质量。为此,我使用以下过程:
我TBitmap
这样称呼它:SetFontQuality(MyBitmap.Canvas.Font, ANTIALIASED_QUALITY)
。这里的目标是设置旧的抗锯齿而不是新的 ClearType。这很好用,如果我DrawText
用来在TBitmap
. 但是,我需要在其上绘制 a 的文本TRichEdit
,所以我正在使用EM_FORMATRANGE
它。但是无论我的 Windows 抗锯齿是什么来绘制文本(所以如果我在 Windows 中启用 ClearType,它就是 ClearType,即使我用 设置了旧的抗锯齿ANTIALIASED_QUALITY
)。
我想我需要更改 的字体质量TRichEdit
,所以我将程序应用于它:SetFontQuality(MyRichEdit.Font, ANTIALIASED_QUALITY)
,但这并没有改变。
我做了一些测试 - 我尝试将过程应用于Font
各种控件的属性 - TButton
, TMemo
, TEdit
, TLabel
. 它对所有人都有效。但是当应用于 aTRichEdit
的Font
属性时,抗锯齿不会改变。
所以,我的问题是:如何更改 TRichEdit 控件的抗锯齿质量?
delphi - 将格式化文本从 SQL 附加到 TRichEdit
你能帮忙解决这个问题吗?如何将格式化的 txt 从数据库字段附加到 TRichEdit ?
澄清一下:我需要获取 2 个具有格式化文本 (RTF) 的数据库字段的内容,并将它们放入 TrichEdit 中以保留格式。我使用 MSSQL Express,该字段设置为 ANSI 格式的 TEXT。
好的,这很好用:
delphi - fcharset2 字体字符显示为符号字符
下面的 RTF 类似于过去十年中一些用户通过自定义写字板使用 delphi 应用程序保存的 RTF,例如使用 trichedit 控件的小应用程序(仿照 Delphi 附带的示例)。该应用程序已在 Delphi 7 中实现,可在 XP 和 windows 7 上运行。
我将 rtf 片段保存到 rtf 文件中,当我在 word 或 wordpad 中打开它时,它们会显示符号字符而不是文本。在我看来,这是有道理的,因为使用的 fcharset 是 2,即 Symbol。
我查看了应用程序中保存的一些 RTF 文档实例,其中使用了 fcharset2,我看到了以下模式:fcharset2 SansSerif、fcharset2 Symbol 和 fcharset2 Roman。fcharset2 符号对我来说很有意义,例如,它用于列表项目符号。
例如,我不明白的是,fcharset2 Roman 是如何进入 rtf 的?我假设某个用户有一种名为浪漫的字体,他/她输入了文本,突出显示它并将字体更改为浪漫。但是为什么富编辑控件保存的是 fcharset2 而不是 fcharset0?
谢谢
c++ - 如何保存 TRichEdit 文本 RTF 的特定部分(c++ codegear)
我正在现有的 c++ CodeGear 项目中创建搜索功能。
当你双击一个单词时,所有出现的单词的背景都是绿色的,就像在 notepad++ 中一样。
在应用颜色之前,我将原始TRichEDit
文本保存在 TMemoryStream 中,以便能够取回原始文本。我在TRichEdit
.
我想知道是否有一种方法可以将搜索词的每次出现都保存在 a 中TMemoryStream
,或者使用 Message 之类的EM_STREAMOUT
?
现在一切正常,但是当TRichEdit
文本太大时,重新加载所有文本的大备忘录需要很长时间。我认为最好只记住改变的单词的颜色,而不是重新加载所有文本。
我真的是编程的初学者,任何帮助都将不胜感激。告诉我是否不够清楚。
这是我的代码,它正在工作并将背景颜色添加到单词的出现处:` void SearchInText::searchWordInText(TRichEdit* reTextToSearch, AnsiString strWordToFind) { lstOccurrences->Clear(); //重置lst
} `
delphi - 如何使用代码中的图像修改 RTF 文件
我有 RTF 格式的文档模板,它包含一些文本和一些图像(使用写字板,Win 7 创建)。我需要更改一些文本并保存它。我正在尝试这样做(Delphi XE7,Win32 平台,Windows 7 x64 SP1):
所以我还没有改变任何东西,但是 2.rtf 不再包含任何图像,并且尺寸比 1.rtf 小得多。其他一切(表格/文本/字体/...)似乎都还可以。任何想法如何保存所有图像(和其他对象)?
更新1。刚刚找到解决方法。我有 DevExpress 组件,如果我使用 TcxRichEdit 而不是 TRichEdit,那么我可以保留所有对象:
但我在 TRichEdit 中找不到类似的功能。
delphi - Delphi:在无格式单元中创建 RichText
您如何在无形单元中模仿 TRichEdit?
我希望能够向其中添加格式化文本。
在所有进程都执行完毕之后,finally 会将格式化数据作为参数传递给实际的 TRichEdit ...
TIA
delphi - 添加新行时如何防止焦点 TRichEdit 的自动滚动?
我有一个TRichEdit
控件,我不断添加行。问题是当控件获得焦点时,只要添加一行,它就会自动滚动到末尾。
添加行时如何停止滚动条移动到末尾?TRichEdit
添加新行时如何防止焦点自动滚动?
c++builder - C ++ Builder XE5,如何在richedit中显示选定的文本
我想知道可用于在 C++Builder XE5 上的 VCL 中从 RichEdit 中选择文本的方法或代码。
我可以使用以下代码更改所选文本的颜色:
但我不知道如何继续在 RichEdit 中显示所选文本。