Я использую MSHTML
(TWebBrowser
control) в режиме дизайна (редактирования). Я использую TEmbeddedWB
, но медленно отхожу от этого компонента и внедряю свой собственный интерфейс. Когда выделен блок текста, поэтому при наборе текста в редакторе, а затем при выделении блока текста для фона используется черный цвет.
Вместо этого я хотел бы использовать синий.
Я знаю, что это как-то связано с диапазоном выбора, но не уверен, как изменить его в режиме конструктора. Код ниже, конечно, когда он не в режиме разработки.
IHTMLSelectionObject currentSelection = document.selection;
IHTMLTxtRange range = currentSelection.createRange() as IHTMLTxtRange;
if (range != null)
{
range.execCommand("BackColor", false, "0000FF");
}
Есть идеи? Нужно ли использовать событие потопления? Или, может быть, QueryCommandValue
? Я пробовал некоторые вещи с HiliteColor
, но безуспешно (согласно документации Mozilla это не поддерживается Internet Explorer).
Я использую C ++ Builder или Delphi, но пример кода на любом языке приветствуется, я могу (наверное) переведите его.