2013-05-30 1 views
0

Я знаю, что этот компонент больше не поддерживается, но он по-прежнему очень хороший редактор WYSIWYG html. Проблема в том, что я не знаю, как загрузить документ сразу после создания формы. Файл справки ProfDHTMLEdit говорит, что я должен использовать свое собственное событие OnCreate, но я все еще получаю ошибку.Delphi - ProfDHTMLEdit: Как загрузить контент в событии OnCreate или OnShow?

procedure TfrmNote.EditorCreate(Sender: TObject); 
begin 
    Editor.InsertHTML('<b> test </b>'); 
end; 

Любая помощь будет очень благодарна.

ответ

0

Я смутно помню детали за его использованием ... но вы должны проверить .CanSetSource и установить только .Source, когда это свойство истинно.

Он не всегда переворачивается в true до тех пор, пока форма не будет готова к показу, поэтому один из способов - добавить таймер, который запускает проверку значения этого свойства .CanSetSource и когда он, наконец, перевернется на true, тогда установите источник .Source на нужный текст.

Возможно, существует более элегантный подход, но, похоже, это работает.

+0

Спасибо! Ты прав! Таймер работает отлично, просто интересно, есть ли более прямой способ сделать это. – Feng

0

На самом деле IE обновлен с большим изменением, этот компонент больше не стоит работать. Наконец я нашел работу. Я создаю веб-страницу и внедряю в нее CKEditor. Этот редактор отлично работает как редактор WYSIWYG html. Когда закончите редактирование, отправьте содержимое редактора в базу данных. Я использую это решение уже 1 год, пока это так хорошо.