Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   CHM-Hilfe: HTML-Popups anzeigen (https://www.delphipraxis.net/4299-chm-hilfe-html-popups-anzeigen.html)

Chewie 23. Apr 2003 15:24


CHM-Hilfe: HTML-Popups anzeigen
 
Ich bastele gerade eine chm-Hilfe, und ich will jetzt eine Seite mit Links als Popup anzeigen (ähnlich wie im SDK links oben bei manchen Seiten). Textpopups kann ich ja per Javascript über ein ActiveX-Objekt der HTML-Hilfe anzeigen, aber kann ich da auch irgendwie HTML-Inhalte anzeigenn?

MathiasSimmack 23. Apr 2003 17:57

Wenn mich so was interessiert (und jetzt wo du´s sagst :wink:), dann schau ich mir den Quellcode der Seite einfach mal an. :)

Allerdings ist das PSDK mittlerweile in der neuen Hilfe HxS. Angeblich sollte der 2003 als Standardhilfe eingeführt werden. Hm, ich warte da irgendwie immer noch drauf ...

Und ich glaube, speziell diese Popups werden im HxS-Toolkit auch erklärt. Musst mal bei Microsoft gucken. (Suchbegriff: VSHIK = Visual Studio Help Integration Kit.) Du brauchst aber min. Visual Studio.NET zur Installation.

Chewie 23. Apr 2003 18:56

Zitat:

Zitat von MathiasSimmack
Wenn mich so was interessiert (und jetzt wo du´s sagst :wink:), dann schau ich mir den Quellcode der Seite einfach mal an. :)

Das mach ich normalerweise auch, aber ich finde im Quelltext keinen Hinweis auf das Popupmenü.

Zitat:

Zitat von MathiasSimmack
Und ich glaube, speziell diese Popups werden im HxS-Toolkit auch erklärt. Musst mal bei Microsoft gucken. (Suchbegriff: VSHIK = Visual Studio Help Integration Kit.) Du brauchst aber min. Visual Studio.NET zur Installation.

Na ja, so kompliziert wollt ich mirs nicht machen. Außerdem hab ich kein Visual Studio.NET :(
Aber danke für die Auskunft.

MathiasSimmack 1. Mai 2003 13:19

Liste der Anhänge anzeigen (Anzahl: 1)
So, um das Thema mal aufzuwärmen:
Zitat:

Zitat von Chewie
... aber ich finde im Quelltext keinen Hinweis auf das Popupmenü.

Das kannst du auch nicht. Das ganze ist im Prinzip "nur" dynamisches HTML + JavaScript. Im Original funktioniert es so:

Ein Skript prüft, ob in der HTML-Seite die Absätze See Also und/oder Requirements vorkommen. Das VSHIK (Visual Help Integration Kit) sagt dazu, dass diese beiden Absätze als H4-Headings zu formatieren sind. So funktioniert dann auch das Skript:
Code:
var heads = document.all.tags("H4");
Dann wird geprüft, ob der "innerText" See Also oder Requirements entspricht. Wenn Ja, dann werden Heading und alle nachfolgenden Elemente (bis zum nächsten Heading oder DIV) in einem String zusammengefasst und durch ein DIV umschlossen. Dieser/dieses DIV ist unsichtbar und daher erst einmal nicht zu sehen. Klickt man dann auf die Grafik (bzw. eigentlich in die Tabellenzelle), wird es sichtbar gemacht. Fertig.


Ich habe mal ein Beispiel angehangen. Die Seite enthält bereits ein fertiges Popup. Aber außerdem holt das eingebaute Skript auch den HTML-Teil ab See Also und erzeugt dynamisch die Grafik bzw. das DIV dafür.
Allerdings ist der Code Microsoft- und damit IE-spezifisch. Solange es für eine CHM-Hilfedatei ist, solange kann man das vernachlässigen. Ansonsten müsste man es umschreiben, damit es auch in anderen Browsern funktioniert.


Gruß.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz