AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

HighlightDocument(IDispatch)

Ein Thema von MathiasSimmack · begonnen am 28. Feb 2005 · letzter Beitrag vom 12. Mär 2005
Antwort Antwort
MathiasSimmack
(Gast)

n/a Beiträge
 
#1

HighlightDocument(IDispatch)

  Alt 28. Feb 2005, 21:26
Hi Leute. Sorry, mir fällt kein besserer Titel ein. Eine Frage: Ich fummele hier wieder mit einem undokumentierten API herum, und dort gibt es eine Funktion "HighlightDocument", die die Aufgabe hat, Suchbegriffe in einem Dokument zu markieren.

Speziell geht es um die Help 2.0. Wer hat, schaut im Visual Studio, bzw. im PSDK oder .NET-Framework SDK. Die dortigen Betrachter bieten die Suchfunktion und die Möglichkeit, die Begriffe (wenn vorhanden) zu markieren. So sieht die Deklaration aus:
procedure HighlightDocument(const pIDispatch: IDispatch); safecall; Jetzt die Rätselfrage: Wo würdet ihr bei einem TWebBrowser-Control ansetzen um evtl. eine Markierung hinzubekommen? Dass es ein TWebBrowser ist, davon gehe ich mal aus. Okay, vllt. kein TWebBrowser , aber eben das entsprechende Control von Microsoft, weil damit ja die Themen der Hilfe angezeigt werden. Ich bin relativ ratlos, weil es viele Interfaces gibt. Meine Hoffnung ist, dass sich jemand schon mal richtig ausführlich mit dem Control beschäftigt hat und mir auf die Sprünge helfen kann.
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: HighlightDocument(IDispatch)

  Alt 5. Mär 2005, 08:35
So, Problem hat sich nebenbei erledigt. Gesucht war "TWebBrowser.Document". Man muss allerdings warten, bis das Dokument fertig geladen ist (OnDocumentComplete), dann ruft man die Funktion "HighlightDocument" einfach auf und übergibt o.g. Interface. Witzigerweise habe ich es in C# zuerst hinbekommen (s. Bild).

Na egal. Thema erledigt.
Miniaturansicht angehängter Grafiken
help2search_102.png  
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: HighlightDocument(IDispatch)

  Alt 5. Mär 2005, 09:14
Zitat von MathiasSimmack:
So, Problem hat sich nebenbei erledigt. Gesucht war "TWebBrowser.Document". Man muss allerdings warten, bis das Dokument fertig geladen ist (OnDocumentComplete), dann ruft man die Funktion "HighlightDocument" einfach auf und übergibt o.g. Interface.
hallo,

Könntest du ein wenig Code posten, wie du das genau gemacht hast?
Interessiert neben mir sicher auch andere!

Gibt es auch einen Befehl wie UnHighlightDocument() ?
Thomas
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#4

Re: HighlightDocument(IDispatch)

  Alt 5. Mär 2005, 10:43
Sorry, aber das hat mit dem TWebBrowser selbst nichts zu tun.


Hast du das PSDK oder irgendeine andere Help 2.0-Collection installiert (Framework SDK, Visual Studio, usw.)? Dann ruf mal den Standardbetrachter auf und suche nach irgendeinem Begriff. Wenn du dann noch sagst, er soll "Suchergebnisse hervorheben", dann hast du exakt die Funktion, die ich benutze.

Bei einer Help 2.0-Suche bekommst du eine Reihe von IHxTopics als Ergebnis. Und jeder von denen (es ist ein Interface, btw) beinhaltet die Funktion "HighlightDocument". Ich habe nur gegrübelt, was ich als Parameter angeben muss und bin eher zufällig auf "TWebBrowser.Document" gekommen, weil ja auch der Hilfebetrachter zur Anzeige der Hilfeseiten ein IE-Browsercontrol benutzt. Nach dem Laden des Dokuments übergibst du der Funktion also die Referenz auf das Document-Interface, und der Topic kümmert sich selbst darum, dass die Suchbegriffe hervorgehoben werden. Das hat aber in dem Sinn nichts mehr mit dem TWebBrowser zu tun.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#5

Re: HighlightDocument(IDispatch)

  Alt 12. Mär 2005, 17:46
Zitat von MathiasSimmack:
Sorry, aber das hat mit dem TWebBrowser selbst nichts zu tun.
Dann ist die Funktion also nicht auf den TWebBrowser anwendbar?
Thomas
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#6

Re: HighlightDocument(IDispatch)

  Alt 12. Mär 2005, 18:29
Was ist denn los mit dir? Ist die Sicht schlecht in der Schweiz? Die Funktion sorgt dafür, dass ein bestimmter Suchbegriff in einem TWebBrowser-Dokument markiert wird. Aber es hat mit dem TWebBrowser selbst nichts zu tun, denn es ist eine externe Funktion/Methode eines so genanntes IHxTopic. Und damit lässt sie sich nur durch eine wie auch immer geartete Suche in Help 2.0-Dateien verwenden.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz