TRxRichEdit Component

Unit
RxRichEd

Description
Компонента TRxRichEdit представляет собой стандартный редактор Windows — "rich edit control". В отличие от компоненты TRichEdit, входящей в состав VCL, компонента TRxRichEdit поддерживает работу как с rich-edit версии 1.0, так и версии 2.0, поддерживая все дополнительные возможности версии 2.0, такие как многоуровневые опреации undo/redo, поиск текста в обоих направлениях от положения курсора, автоматическое определение и выделение URL-ссылок в тексте и т.д.

Вы можете определить, какая версия библиотеки rich-edit используется приложением, по значению переменной RichEditVersion.
Кроме того, компонента TRxRichEdit поддерживает вставку OLE-объектов (в том числе графических изображений) и активизацию их по месту. Работа с OLE-объектами в редактируемом тексте определяется значениями свойств AllowObjects, AllowInPlace и AutoVerbMenu.
Класс TRxRichEdit реализует несколько методов для работы со стандартными диалогами Windows — InsertObjectDialog, PasteSpecialDialog, ObjectPropertiesDialog, FindDialog, ReplaceDialog.



Примеры работы и некоторые интересные свойства и методы.

Declaration
property AllowObjects: Boolean;

Description
Свойство определяет, возможно ли будет вставлять OLE-объекты в редактор TRxRichEdit. Значение True (по умолчанию) разрешает использование OLE-объектов.



Declaration
property AllowInPlace: Boolean;

Description
AllowInPlace determines whether the rich edit control allows inplace activation of contained OLE objects.
Set AllowInPlace to specify what happens when the user activates the OLE object in the rich edit control. If AllowInPlace is True and object is not iconic, the OLE object is activated inplace. If AllowInPlace is False, the OLE object is activated in a separate window.

Note
This property is present only in Delphi 3.0 or higher.



Declaration
property AutoVerbMenu: Boolean;

Description
AutoVerbMenu determines whether the rich edit control automatically creates a pop-up menu containing the OLE object's verbs.
Use AutoVerbMenu to specify whether the OLE object can add items to the rich edit control's popup menu. If AutoVerbMenu is True (the default), the OLE object add items to the menu specified by PopupMenu property or creates new popup menu. If AutoVerbMenu is False, no popup menu items are automatically created.



Declaration
function InsertObjectDialog: Boolean;

Description
Displays the Insert Object OLE dialog box.
Call InsertObjectDialog to let the user create an OLE object. The OLE object can be embedded or linked. InsertObjectDialog returns True if the dialog box was successfully displayed and the user chose the OK button. InsertObjectDialog returns False otherwise. If the user chose OK then InsertObjectDialog method inserts an object into a rich edit control and the selection is replaced with the new OLE-object.

Note
If AllowObjects is Flase this method simply returns False without any actions.


Declaration
function PasteSpecialDialog: Boolean;

Description
Displays the Paste Special OLE dialog box.
Call PasteSpecialDialog to let the user control how the contents of the Windows clipboard are pasted into the rich edit control. The Paste Special dialog box lets the user select the format of the data and whether the OLE object should be displayed as an icon (and if so, to choose a different icon). PasteSpecialDialog returns True if the dialog box was successfully displayed and the user chose the OK button. It returns False otherwise.

Note
If AllowObjects is Flase this method simply returns False without any actions.



Declaration
const
RichEditVersion: TRichEditVersion;
Description
RichEditVersion indicates which version of rich edit control DLL is installed.
The appearance and behavior of rich edit control varies depending on which version of rich edit library (riched32.dll or riched20.dll) is installed. Use RichEditVersion variable to determine which version is installed.

Windows NT

Microsoft® Windows NT® version 4.0 ships rich edit libraries 1.0 and 2.0. Windows NT version 5.0 ships rich edit library 3.0 with Rich Edit 1.0 emulation.

Windows 95
Microsoft® Windows® 95 ships only Riched32.dll. However, Riched20.dll is compatible with Windows 95 and may be present if an application that uses Rich Edit 2.0 has been installed on the system.

Windows 98
Microsoft® Windows® 98 ships Riched32.dll and Riched20.dll. This Riched20.dll is the Rich Edit 2.0 version.


Declaration
type
TRichEditVersion = 1..3;
Description
Тип определяет возможные значения версии библиотеки (DLL), содержащей элемент управления Rich Edit.