Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
ВнизHTML Редактор от Microsoft Найти похожие ветки
← →
Admido (2005-08-01 13:48) [40]Алексей Петухов (31.07.05 17:03) [37]
"А где можно почитать описание метода Doc.execCommand и его параметров?"
Вот тут:
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/document2/execcommand.asp
← →
Admido (2005-08-01 13:55) [41]И еще тут сможете найти много полезной информации:
http://groups.yahoo.com/group/delphi-webbrowser/messages/
Алексей Петухов (26.07.05 18:48) [17]
...
"3) Вообще задача - элементарный редактор HTML с минимальным набором опций."
...
Amido (27.07.05 15:55) [33]
...
"...Если же захотите "копать глубже" - примите мои соболезнования =DDD"
...
По моему, вы начинаете "копать глубже" =D
← →
Admido (2005-08-01 14:30) [42]Алексей Петухов (31.07.05 18:17) [38]
"1. Как получить атрибуты шрифта выделенного текста?"
"Копайте" в эту сторону:
var
selectionRange: IHtmlTxtRange;
iHTelement: IHTMLElement;
font: WideString;
begin
//...
selectionRange := IHtmlTxtRange(iHTDocument2.selection.createRange);
try
font := selectionRange.parentElement.style.fontFamily;
//... etc etc...
except
Exit;
end;
"2. Как сделать обработчик события OnMouseUp?"
"3. Как определить редактировалось ли содержание (onChange)?"
Мне вас уже жалко =] Идите на http://www.euromind.com/iedelphi/, смотрите как подключить EditDesigner. У него имеется к примеру "function TForm1.EditDesigner1PreHandleEvent(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HRESULT;" таким образом сможете отлавливать события.
И вообще bug"рово это все и документации никакой (только минимум). По всему интернету только вопросы... Тут 2 варианта: или все жадные (денег хотят), или никто не может найти "нормального" решения, т.к. сделано это добро в "стиле микрософт". Всё через ж..пу... буржуи...
К примеру попробуйте сделать визуальный редактор таблиц как в каком-нибудь FrontPage... ёб.. слов не хватает... Если получится - поделитесь впечатлениями и кодом желательно ;)
"4. как определить текущий (под курсором) таг (аналогично DHTMLEdit.DOM.parentWindow.event.srcElement;)"
Также как и в 1. пункте, только:
selectionRange.parentElement.tagName;
← →
Алексей Петухов (2005-08-02 06:23) [43]Большое спасибо Admido.
Немного расслабился и то-же улыбнулся. :-)
Можно сказать впервые наткнулся на проблему, которую действительно надо решать (очень мало информации и опыт других собирается по крупицам).
← →
Алексей Петухов (2005-08-05 17:30) [44]Еще один вопросик "в догонку".
Никак не пойму - как побороть сообщение "Этот документ изменился. Сохнанить изменения?"
1)Вот так заполняетсяwbEditor:TWebBrowser
(где s - путь к текстовому файлу "по умолчанию"):var
Flags:OleVariant;
s:string;
begin
.....
wbEditor.Navigate(WideString(s),Flags,Flags,Flags,Flags);
.....
2) затем редактируем текст в компонентеwbEditor:TWebBrowser
.
3) потом хотим опять загрузить в него текст "по умолчанию" (как в п.1).
Вот здесь и вылетает вопросец.
Как ибавиться от него?Я подозреваю должен быть метод или свойство (что-то типаDisplayAlerts:=false
), но не могу найти ничего подобного. Прошу Посоветуйте по теме.
← →
Алексей Петухов (2005-08-06 19:32) [45]Помогите с последним вопросом, пожалуйста.
← →
Amido © (2005-08-08 10:52) [46]Вот и ответик "в догонку" :)
Сам с етой проблемой столкнулся, а решается она довольно таки просто. Перед открытием документа необходимо просто поставить designMode := "off".
//--- File -> Open
...
var
HtDocument2: IHTMLDocument2; // global variable
...
procedure TfrmMain.Action1Execute(Sender: TObject);
begin
if HtDocument2 <> nil then
HtDocument2.designMode := "off";
OpenDialog1.InitialDir := ExtractFileDir(ParamStr(0))+"\docs\";
if OpenDialog1.Execute then
EmbeddedWB1.Navigate("file://" + OpenDialog1.FileName);
end;
А вот как инициализируется HtDocument2:
procedure TfrmMain.EmbeddedWB1NavigateComplete2(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
begin
try
HtDocument2 := (EmbeddedWB1 as TEmbeddedWB).document as IHTMLDocument2;
except
// do nothing
end;
end;
Страницы: 1 2 вся ветка
Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.037 c