Hilfe

Sonstiges (nicht kategorisierbar)

Moderator: Moderatoren

Antworten
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Hilfe

Beitrag von Jan »

Zum ersten Mal in meinem Leben muss ich für ein Programm eine Windows-Onlinehilfe mitliefern. Ich hab mir schon von Alaska den HTML-Workshop runtergeladen, aber irgendwie komme ich da nicht zu einem befriedigenden Ergebnis.

Kann mir jemand eine kurze Anleitung geben, wie ich eine vernünftige Windows-Konforme Windows-Hilfe erstelle?

Jan
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hi,

Grundsätzlich baust du HTML Seiten zusammen, die dann mit dem Compiler zu einer Datei verbunden werden. Vor Jahren habe ich eine alte Hilfedatei mit einem speziellen Hilfeprogramm erstellt, ich meine WinHelp ... das hat einem die Arbeit deutlich erleichtert, da RTF Dateien nötig waren und ich keine Ahnung davon hatte insbesondere wie die Aufrufe zu bewerkstelligen sind.

Für die HTML Dateien würde ich aber auf keinen Fall MS Word nehmen, da dieser viel unnötigen Ballast einfügt.
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Beitrag von Jan »

Hallo Hubert,

soweit hatte ich das auch schon verstanden. Aber: Es gibt da ja z. B. diverse spezielle Formatierungen für Aufnahme in das Inhaltsverzeichnis, die Einleitung, etc. Und damit tue ich mich halt sehr schwer mit, wie das Ganze funktionieren soll.

Eigentlich gibt es ja genau dafür den Workshop, den ich mir extra installiert habe. Aber auch damit bekomme ich das einfach nicht sauber hin.

Jan
J.Renseler
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 151
Registriert: Do, 15. Nov 2007 11:40
Wohnort: Krefeld
Kontaktdaten:

Beitrag von J.Renseler »

Hallo,

ich weiß ja nicht wie umfangreich deine Dokumentation werden muss. Eventuell wäre für dich ein "Hilfe Editor" interessant der dir das erstellen der Hilfe und auch die spätere Pflege sehr erleichtert.

Wir benutzen dafür Help und Manual http://www.helpandmanual.com, kann ich nur empfehlen. (Kostet in der normalen Version um die 350€)

Gruß,
Jannik
Kassensysteme für den Einzelhande http://ab-software.de
Mitglied der XUG-Cologne http://www.xug-cologne.de
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hi,

Der HTML-Workshop ist (soweit ich mich erinnere) kein Xbase++ Workshop um das zu lernen, sondern das MS Programm, das aus einzelnen Definitionen und den HTML Seiten die CHM Datei zusammenbaut.
Unter Alaska\xppw32\source\samples\basics\HtmlHelp gibt es ein Beispiel mit HTML Dateien und PRG Datei die die jeweils aufruft, wobei statt F1 einfach eine Listbox die Themen zur Auswahl anbietet.

Auf Xbase++ Seite muss man :helplink ausfüllen, damit in der Hilfedatei auf die richtige Zielstelle gesprungen wird. Ein XbpHelp()-Objekt verwaltet dabei den Standort der CHM Hilfedatei, während die XbpHelpLabel() innerhalb des helplink auf die Unterseiten verweisen.
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Beitrag von Jan »

Jannik,

hab ich mir mal runtergeladen. Mal sehen, ob ich in den 14 Tagen der Demo was auf die Beine stellen kann, was mir weiterhilft.

Hubert,

danke für die Hinweise. Werd ich mir heute Abend zu Hause mal ansehen. Aber wird denn unter einem Xbase++ -Programm nicht normalerweise automatisch die Hilfefunktion mit F1aufgerufen (wenn es denn eine gibt)? Oder muß ich das zusätzlich angeben neben Xbphelp()?

Jan
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Jan,

im MDI-Beispiel kannst du sehen, was ein Programm angeben muss, damit die Hilfedatei dem Programm bekannt ist.

Suche einfach nach HelpObject() bzw. XbpHelp ...

Sobald ein aktives Control dann einen F1 Tastendruck bemerkt, versucht es den :helplink zu aktivieren (die spezielle Hilfeseite aufzurufen).
Wenn bei diesem Control nichts spezielles hinterlegt ist (der Event also nicht behandelt wird), wird die nächst höhere Ebene (Parent oder Owner weiß ich jetzt grad nicht, ist aber eh meist gleich) aufgerufen bis irgendjemand den Event verarbeitet. Im MDI Beispiel meist der Dialog selbst, da kaum spezielle Ziele definiert wurden.
Gruß
Hubert
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Koverhage »

Jan,

local oHelp := XbpHelpLabel():new():create()

oHelp:HelpObject:=HelpObject("proghelp.chm","Online Hilfe zum Programm")
oCrt:helplink := oHelp

wobei proghelp.chm die compilierte Hilfedatei ist

Die Erstellung mit Html Help Workshop ist eigentlich relativ leicht.
Wird (aber genauso wie bei allen anderen Systemen) schnell umfamgreich
wenn Du für jedes Feld eine Hilfe anbieten möchtest, was aber Sinn macht, da Du im Programm dann direkt das jeweilige Hilfethema anzeigen kannst.

Klaus
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16508
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Jan,
nur kurz der Hinweis:
Du hast - abgesehen von Deinen 378 html-Dateien - bis zu drei wichtige Dateien für das chm-File-Projekt:
  • eine .hhk-Datei (nicht nötig, enthält nur Stichwörter, nach denen gesucht werden können soll, ohne dass sie selber auf eine der HTML-Seiten vorkommen).
  • eine .hhp-Datei (Dein eigentliches Projectfile, hier stehen einfach nur alle notwendigen Dateien und sonstigen Angaben drin, wie z.B. Hauptseite, Name der Hilfe, Fenstergrösse,...!!)
  • eine .hhc-Datei (Dein Inhaltsverzeichnis (table of content) mit Anzeigetext im Indexverzeichnis und entsprechend zugeordnete Hilfedatei)
Beispiele für die einzelnen Dateien anhand meiner Hilfe:
.hhk-Datei:

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->
</HEAD><BODY>
<UL>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="code">
		<param name="Name" value="Adressen kodieren">
		<param name="Local" value="Hilfe\Scripte\Adressen_kodieren.html">
		<param name="Name" value="Dateneingabe Hunde">
		<param name="Local" value="Hilfe\Scripte\Hundeeingabe.html">
		<param name="Name" value="Hundecodeliste">
		<param name="Local" value="Hilfe\Scripte\Hundecodeliste.html">
		</OBJECT>
</UL>
</BODY></HTML>
.hhp-Datei:

Code: Alles auswählen

[OPTIONS]
Auto Index=Yes
Compatibility=1.1 or later
Compiled file=easydog.chm
Contents file=easydog.hhc
Default Window=Easydog
Default topic=Hilfe\Scripte\Allgemein.html
Display compile progress=No
Full-text search=Yes
Index file=easydog.hhk
Language=0x407 Deutsch (Deutschland)
Title=Easydog 4.7 Hilfe

[WINDOWS]
Easydog="Easydog 4.7","easydog.hhc","easydog.hhk","Hilfe\Scripte\Allgemein.html","Hilfe\Scripte\Allgemein.html",,,,,0x22520,200,0x3006,[0,0,800,600],0x830000,,,,,,0


[FILES]
Hilfe\Scripte\Adressen_Vereine.html
Hilfe\Scripte\Adressen.html
Hilfe\Scripte\Adressen_kodieren.html
Hilfe\Scripte\Allgemein.html
Hilfe\Scripte\Angliederungsschreiben.html
Hilfe\Scripte\Ausstellungsdaten.html
Hilfe\Scripte\Ausstellungskosten.html
Hilfe\Scripte\Bewertungen_CACIB.html
Hilfe\Scripte\Bewertungen_CAC.html
Hilfe\Scripte\Bezahlen_des_Meldegeldee.html
Hilfe\Scripte\Binden-Druckerei.html
Hilfe\Scripte\Binden-Textverarbeitung.html
Hilfe\Scripte\Brief-Sonderleiter.html
Hilfe\Scripte\Briefe_an_den_VDH.html
Hilfe\Scripte\Briefeadressen.html
Hilfe\Scripte\Drucken-komplett.html
Hilfe\Scripte\Einnahmenuebersicht.html
Hilfe\Scripte\Gelder-Unterformular.html
Hilfe\Scripte\Gelder-ueberarbeiten.html
Hilfe\Scripte\Gelderliste.html
Hilfe\Scripte\Hundecodeliste.html
Hilfe\Scripte\Hundedaten-Pruefliste.html
Hilfe\Scripte\Hundedaten-suchen.html
Hilfe\Scripte\Hundeeingabe.html
Hilfe\Scripte\Info_an_Vereine.html
Hilfe\Scripte\Kassenauswertung.html
Hilfe\Scripte\Kat-Binden.html
Hilfe\Scripte\Landesverbaende-Adressen.html
Hilfe\Scripte\Mitgliedsvereine-Pruefliste.html
Hilfe\Scripte\Mitgliedsvereine-vorlaeufig.html
Hilfe\Scripte\Nachzuchtgruppe.html
Hilfe\Scripte\Paarklasse.html
Hilfe\Scripte\Richter-Einladung.html
Hilfe\Scripte\Richter_Pruefliste.html
Hilfe\Scripte\Richtereinteilung.html
Hilfe\Scripte\zusRichtereinteilung.html
Hilfe\Scripte\Ringeinteilung.html
Hilfe\Scripte\SYS_Ausstellungkosten.html
Hilfe\Scripte\Sonderleiter_Pruefliste.html
Hilfe\Scripte\Sonderleitereinteilung.html
Hilfe\Scripte\Tag_der_Ausstellung.html
Hilfe\Scripte\Zuchtgruppe.html
Hilfe\Scripte\Zusatzwettbewerbe-nachbearbeiten.html
Hilfe\Scripte\ausl-Richterfreigabe.html
Hilfe\Scripte\fehlende_Aussteller.html
Hilfe\Scripte\kommerzielle_Staende.html
Hilfe\Scripte\offene_Betraege.html
Hilfe\Scripte\sortieren.html
Hilfe\Scripte\Standardvorlage.html
Hilfe\Scripte\Dateinamen_Brief_eingeben.html
Hilfe\Scripte\CACIB-Vergabe.html
Hilfe\Scripte\Besitzer_editieren.html
Hilfe\Scripte\SYS_Vordrucke_bearbeiten.html
Hilfe\Scripte\sys_anmelden.html
Hilfe\Scripte\SYS_Hundedaten_zusammenfuegen.html
Hilfe\Scripte\Hundedaten_separat_sichern.html
Hilfe\Scripte\sys_Schwarze_Liste.html
Hilfe\Scripte\sys_Sonderraeume.html
Hilfe\Scripte\auswaehlen.html
Hilfe\Scripte\Eingabe_eines_Dateinamens.html
Hilfe\Scripte\Drucken_Mahnschreiben.html
Hilfe\Scripte\Hundedaten_gefunden.html
Hilfe\Scripte\Eingabe_erste_Datensatznummer.html
Hilfe\Scripte\Drucken_mit_Vorlage.html
Hilfe\Scripte\PLZ_editieren.html
Hilfe\Scripte\Varietaetbetreuen.html
Hilfe\Scripte\Varietaeteninring.html
Hilfe\Scripte\SYS_Katalog_loeschen_packen_entpacken.html
Hilfe\Scripte\uebernehmen.html
Hilfe\Scripte\InternetHundecodeliste.html
Hilfe\Scripte\runterladen.html
Hilfe\Scripte\hochladen.html
Hilfe\Scripte\webangaben.html
Hilfe\Scripte\Internethundeeingabe.html
Hilfe\Scripte\HHunde_editieren.html
Hilfe\Scripte\Internethundeuebernehmen.html
.hhc-Datei:

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->
</HEAD><BODY>
<UL>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Adressen der Landesverb&auml;nde eingeben / editieren">
		<param name="Local" value="Hilfe/Scripte/Landesverbaende-Adressen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Adressen der Vereine eingeben / editieren">
		<param name="Local" value="Hilfe/Scripte/Adressen_Vereine.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Adressen der vorl&auml;ufigen Mitgliedsvereine eingeben / editieren">
		<param name="Local" value="Hilfe/Scripte/Mitgliedsvereine-vorlaeufig.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Adressen Kodieren">
		<param name="Local" value="Hilfe/Scripte/Adressen_kodieren.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Allgemeine Adressen eingeben / editieren">
		<param name="Local" value="Hilfe/Scripte/Adressen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Anmelden an der Systempflege">
		<param name="Local" value="Hilfe/Scripte/sys_anmelden.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Ausstellungsdaten">
		<param name="Local" value="Hilfe/Scripte/Ausstellungsdaten.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Ausstellungskosten">
		<param name="Local" value="Hilfe/Scripte/Ausstellungskosten.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Ausw&auml;hlen">
		<param name="Local" value="Hilfe/Scripte/auswaehlen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Auswahl der Adressaten">
		<param name="Local" value="Hilfe\Scripte\Briefeadressen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Auswahl der Variet&auml;ten (Richter-/Sonderleitereinteilung)">
		<param name="Local" value="Hilfe\Scripte\Varietaetbetreuen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Auswahl der Variet&auml;ten (Ringeinteilung)">
		<param name="Local" value="Hilfe/Scripte/Varietaeteninring.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Besitzer &uuml;berarbeiten">
		<param name="Local" value="Hilfe\Scripte\Besitzer_editieren.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Briefe an die Dachorganisationen">
		<param name="Local" value="Hilfe/Scripte/Briefe_an_den_VDH.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Briefe Standardvorgabe">
		<param name="Local" value="Hilfe\Scripte\Standardvorlage.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Briefnamen eingeben">
		<param name="Local" value="Hilfe\Scripte\Dateinamen_Brief_eingeben.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="CAC-Bewertungen eingeben">
		<param name="Local" value="Hilfe/Scripte/Bewertungen_CAC.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="CACIB Berechtigungen">
		<param name="Local" value="Hilfe\Scripte\CACIB-Vergabe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="CACIB-Bewertungen eingeben">
		<param name="Local" value="Hilfe/Scripte/Bewertungen_CACIB.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Dateinamen eingeben">
		<param name="Local" value="Hilfe/Scripte/Eingabe_eines_Dateinamens.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Drucken allgemein">
		<param name="Local" value="Hilfe/Scripte/Drucken-komplett.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Einladung / Info an die Zuchtrichter">
		<param name="Local" value="Hilfe/Scripte/Richter-Einladung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Einladung an die Sonderleiter">
		<param name="Local" value="Hilfe/Scripte/Brief-Sonderleiter.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="fehlende Aussteller">
		<param name="Local" value="Hilfe/Scripte/fehlende_Aussteller.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Formular: Angliederung einer Sonderschau">
		<param name="Local" value="Hilfe/Scripte/Angliederungsschreiben.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Gelder &uuml;berarbeiten">
		<param name="Local" value="Hilfe/Scripte/Gelder-ueberarbeiten.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Gelder &uuml;bearbeiten - Unterformular">
		<param name="Local" value="Hilfe/Scripte/Gelder-Unterformular.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Gelderliste (Auszahlungen an die Vereine)">
		<param name="Local" value="Hilfe/Scripte/Gelderliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Grundlegendes &uuml;ber Easydog">
		<param name="Local" value="Hilfe/Scripte/Allgemein.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundearchiv: Dubletten l&ouml;schen">
		<param name="Local" value="Hilfe/Scripte/HHunde_editieren.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundecodeliste">
		<param name="Local" value="Hilfe/Scripte/Hundecodeliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten eingeben">
		<param name="Local" value="Hilfe/Scripte/Hundeeingabe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten eingeben - erste Einlaufnummer festlegen">
		<param name="Local" value="Hilfe/Scripte/Eingabe_erste_Datensatznummer.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten separat sichern">
		<param name="Local" value="Hilfe/Scripte/Hundedaten_separat_sichern.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten suchen">
		<param name="Local" value="Hilfe/Scripte/Hundedaten-suchen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten suchen - Daten anzeigen">
		<param name="Local" value="Hilfe/Scripte/Hundedaten_gefunden.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Hundedaten zusammenf&uuml;hren">
		<param name="Local" value="Hilfe/Scripte/SYS_Hundedaten_zusammenfuegen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Info an die Rassehunde-Zuchtvereine">
		<param name="Local" value="Hilfe/Scripte/Info_an_Vereine.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - erg&auml;nzende Informationen">
		<param name="Local" value="Hilfe/Scripte/webangaben.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - gemeldete Hunde herunterladen">
		<param name="Local" value="Hilfe/Scripte/runterladen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - Hunde &uuml;bearbeiten und &uuml;bernehmen">
		<param name="Local" value="Hilfe/Scripte/Internethundeeingabe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - &Auml;nderungen bei vorhandenen Hunden &uuml;bernehmen">
		<param name="Local" value="Hilfe/Scripte/Internethundeuebernehmen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - Hundecodeliste &uuml;berarbeiten">
		<param name="Local" value="Hilfe/Scripte/InternetHundecodeliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - notwendige Dateien hochladen">
		<param name="Local" value="Hilfe/Scripte/hochladen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Internet - Variet&auml;ten ausw&auml;hlen">
		<param name="Local" value="Hilfe/Scripte/uebernehmen.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Kassenauswertungen">
		<param name="Local" value="Hilfe/Scripte/Kassenauswertung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Katalog binden">
		<param name="Local" value="Hilfe/Scripte/Kat-Binden.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Katalog binden - Steuerzeichen">
		<param name="Local" value="Hilfe\Scripte\Binden-Druckerei.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Katalog binden - Textverarbeitung">
		<param name="Local" value="Hilfe/Scripte/Binden-Textverarbeitung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Katalog l&ouml;schen, packen, entpacken">
		<param name="Local" value="Hilfe/Scripte/SYS_Katalog_loeschen_packen_entpacken.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Mahnschreiben an s&auml;umige Aussteller">
		<param name="Local" value="Hilfe/Scripte/Drucken_Mahnschreiben.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Meldegeld am Ausstellungstag">
		<param name="Local" value="Hilfe/Scripte/Bezahlen_des_Meldegeldee.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="nachbearbeiten der Nachzuchtgruppen">
		<param name="Local" value="Hilfe/Scripte/Nachzuchtgruppe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="nachbearbeiten der Paarklassen">
		<param name="Local" value="Hilfe/Scripte/Paarklasse.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="nachbearbeiten der Zuchtgruppen">
		<param name="Local" value="Hilfe/Scripte/Zuchtgruppe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="nachbearbeiten der Zusatzwettbewerbe">
		<param name="Local" value="Hilfe/Scripte/Zusatzwettbewerbe-nachbearbeiten.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="offene Betr&auml;ge">
		<param name="Local" value="Hilfe/Scripte/offene_Betraege.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Postleitzahlen und Orte &uuml;berarbeiten">
		<param name="Local" value="Hilfe\Scripte\PLZ_editieren.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Pr&uuml;fliste Hundedaten">
		<param name="Local" value="Hilfe/Scripte/Hundedaten-Pruefliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Pr&uuml;fliste Migliedsvereine">
		<param name="Local" value="Hilfe/Scripte/Mitgliedsvereine-Pruefliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Pr&uuml;fliste Richter">
		<param name="Local" value="Hilfe/Scripte/Richter_Pruefliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Pr&uuml;fliste Sonderleiter">
		<param name="Local" value="Hilfe/Scripte/Sonderleiter_Pruefliste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Richtereinteilung">
		<param name="Local" value="Hilfe/Scripte/Richtereinteilung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Richtereinteilung f&uuml;r die Wettbewerbe im Ehrenring">
		<param name="Local" value="Hilfe/Scripte/zusRichtereinteilung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Richterfreigabe f&uuml;r ausl&auml;ndische Richter">
		<param name="Local" value="Hilfe/Scripte/ausl-Richterfreigabe.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Ringeinteilung erstellen">
		<param name="Local" value="Hilfe/Scripte/Ringeinteilung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Schwarze Liste">
		<param name="Local" value="Hilfe/Scripte/sys_Schwarze_Liste.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Sonderleitereinteilung">
		<param name="Local" value="Hilfe/Scripte/Sonderleitereinteilung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Sonderr&auml;ume &uuml;berarbeiten">
		<param name="Local" value="Hilfe/Scripte/sys_Sonderraeume.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Sortieren">
		<param name="Local" value="Hilfe/Scripte/sortieren.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Tag der Ausstellung">
		<param name="Local" value="Hilfe/Scripte/Tag_der_Ausstellung.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Textverarbeitung f&uuml;r sonstiges">
		<param name="Local" value="Hilfe/Scripte/kommerzielle_Staende.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="&Uuml;bersicht der Einnahmen und Ausgaben">
		<param name="Local" value="Hilfe/Scripte/SYS_Ausstellungkosten.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="&Uuml;bersicht der sonstigen Einnahmen">
		<param name="Local" value="Hilfe/Scripte/Einnahmenuebersicht.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Vordrucke ausw&auml;hlen">
		<param name="Local" value="Hilfe/Scripte/Drucken_mit_Vorlage.html">
		</OBJECT>
	<LI> <OBJECT type="text/sitemap">
		<param name="Name" value="Vordrucke bearbeiten">
		<param name="Local" value="Hilfe/Scripte/SYS_Vordrucke_bearbeiten.html">
		</OBJECT>
</UL>
</BODY></HTML>
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Beitrag von Jan »

Martin,

aber werden denn diese Dateien nicht automatisch beim Compilieren erstellt?

Klaus,

ich denke, ich werde immer nur eine dialogbezogene Hilfe anbieten. Das scheint mir in diesem Projekt übersichtlicher zu sein (in den Dialogen sind häufig "einfach nur" Auswahlmöglichkeiten, und bei einer feldbezogenen Hilfe ist dann der Vergleich, was denn der User davon genau möchte, eher schwierig.

Hubert,

hab ich mir gestern noch angesehen. Allerdings stellt sich mir dabei die allgemeine Frage

An Alle:

Wenn ich eine kontextsensitive Hilfe erstelle: Woher weiß die Hilfe, zu welchem Thema sie springen soll? Ich hab bislang noch nichts als Parameter identifizieren können, der sowohl im Programm als auch in der Hilfe auftaucht (ich muß aber auch gestehen, daß gestern meine Familie ein wenig Zeit gefordert hatte, und ich damit nicht so richtig tief in das Thema gekommen bin wie geplant).

Jan
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16508
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Jan,
die Datei, die beim Kompilieren erstellt wird, ist die Ergebnisdatei (.chm).

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Rolf Ramacher »

Hi Jan,

wie wäre es, wenn du die Hilfe mit Pushbutton aktiviest. Hierbei kannst du doch ein Kennzeichen mitgeben, welche Hilfetext angezeigt werden soll
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Jan,

schau nochmal das HTMLHELP Beispiel an, da ist bei jedem Control oder Fenster, das direkt aufgerufen werden soll ein XbpHelpLabel im :helplink eingetragen.

Dies ist die Xbase++ Seite HtmDemo.PRG :

Code: Alles auswählen

   oCombo := XbpCombobox():New ( oStatic, oStatic, ;
                                 {10, nYsize-85-200}, {nXsize-40, 200} )
   oCombo:Type := XBPCOMBO_DROPDOWNLIST
   oCombo:Create()
   oCombo:helpLink := XbpHelpLabel():new( "html\xbp_help.htm#Combobox" ):create()
   ...
   oMLE := XbpMLE():new( oStatic,oStatic, {10,10}, {nXsize-40,nYSize-140} )
   oMLE:create()                    // Multiline Edit erzeugen und mit
   oMLE:setData( cText )            // Text initialisieren
   oMLE:helpLink := XbpHelpLabel():new( "html\xbp_help.htm#Mle" ):create()
wichtig ist hier einmal die HTML (Quellcode) Datei mit Pfad (am Besten wohl relativ zum Projekt und der Controlname (frei wählbar) abgetrennt mit # . Beim Blick in die xbp_help.htm sehe ich, dass dort #Mle etc. definiert ist als <A ...> also muss wohl das # mit als Name herhalten.

Hier stelle ich mal die Datei ein:

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.00">
<title>Xbase Parts</title>
</HEAD>
<BODY>
<a href=#combobox></a>
<h1>Combobox</h1>
<p>
Die Combobox listet verschiedene Hilfethemen.
</p>
<a href=#Mle></a>
<h1>Multi Line Edit</h1>
<p>
Das XbpMLE Objekt zeigt HTML Dateien im Quellcode an.
</p>
</BODY>
</HTML>
Leider ist in dem Beispiel jetzt nicht angegeben wie man das ZIEL dieses Verweises angibt. Eventuell durch NAME= oder ID= ?

Eventuell sieht man das bei Martins Beispiel.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hi,

im HTMHELP Beispiel wird fast immer auf eine direkte Ziel-htm Datei verwiesen. Wenn ein genaueres Sprungziel (#Combobox) angegeben ist, hat es keine Wirkung -> fehlt es in der HTML Datei als Ziel ?

Außerdem hat bei mir in diesem Beispiel die F1 Taste keine Wirkung,
ist das bei euch anders ? Beim MDI-Beispiel geht es ...

Die 3 zitierten Verwaltungsdateien werden doch (außer dem Inhaltsverzeichis) innerhalb des HTMLWorkshops eingegeben oder ?
Gruß
Hubert
Alfred
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 476
Registriert: Do, 03. Mai 2007 12:37
Wohnort: München

Beitrag von Alfred »

Hallo Jan,

hast du in diesem Fall express++ im Einsatz?

Gruß
Alfred
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hi,

im HTML-Workshop gibt es oben eine Schaltfläche mit Fragezeichen und Weltkugel. Diese Hilfe enthält (auf englisch) Infos auch zu HTML.

<A HREF= ... ist ein Link (Verweis) auf eine andere Stelle ...
<A NAME= ... ist ein ZIEL worauf ein HREF verweisen kann.

Wobei meistens ja eine HTML Datei je Bildschirm sinnvoll ist und dann braucht man das ja gar nicht so genau anzugeben.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

brandelh hat geschrieben:Außerdem hat bei mir in diesem Beispiel die F1 Taste keine Wirkung, ist das bei euch anders ? Beim MDI-Beispiel geht es ...
das liegt daran, dass man dem XbpHelpLabel:helpObject das XbpHelp-Objekt zuweisen muss, das die Hilfedatei verwaltet.
In der Hilfe zu HelpLabel steht es so im Beispiel.

Und im MDI Beispiel wurde darum auch das HelpObject der Anwendung in eine Funktion HelpObject() ausgelagert ;-)
Gruß
Hubert
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Koverhage »

Jan,

Du kannst das auch so machen.


HelpObject():showHelp("html\combobox.htm")

Es würde dann die spezielle Hilfedatei Combobox.htm aufgerufen.
die Du natürlich erstellt haben musst und im HTML Help Compiler wie Martin das beschreiben hat einbinden.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hi,

so ich habe das mal mit einer HTML Datei ausprobiert. Interne Verweise müssen beim Verweis mit # gekennzeichnet werden. Das Ziel hat diese # aber nicht.

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Test HTML</TITLE>
<META NAME="Generator" CONTENT="Med V2.1">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" VLINK="#800000" ALINK="#FF00FF" BACKGROUND="?">
[color=red]<A HREF="#OB">Oben</A> <A HREF="#MI">Mitte</A> <A HREF="#UN">Unten</A>[/color]
[color=blue]<A NAME="OB">[/color]
<H1>Oben</H1>
<OL>
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
</OL>
[color=blue]<A NAME="MI">[/color]
<H1>Mitte</H1>
<OL>
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
</OL>
[color=blue]<A NAME="UN">[/color]
<H1>Unten</H1>

<OL>
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
	<LI>a
	<LI>b
	<LI>c
	<LI>d
	<LI>e
	<LI>f
	<LI>g
	<LI>h
	<LI>i
	<LI>j
</OL>


</BODY>
</HTML>
<A HREF="#MI">Mitte</A> ist ein Verweis auf <A NAME="MI">.
Der Verweis kann natürlich auch im Xbase++ Programm so verwendet werden, z.B. bei der Suche nach Schlagwörtern oder von einem Feld genau zu der Feldhilfe auf einer Seite die für den ganzen Bildschirm gedacht ist.

Insgesamt doch jede Menge Arbeit insbesondere, wenn jemand damit rechnen muss auch eine gedruckte Version liefern zu müssen. In dem Falle ist das Programm das einem das alles abnimmt sicher nicht zu teuer.

Übrigens, wenn man schon so eine schöne HTML Hilfe hat, kann man die auch gleich auf dem Web-Server (die Quelldateien, nicht die CHM) als Online Hilfe zur Verfügung stellen. ;-) Reine HTML Dateien sind schließlich auch nicht auf Windows beschränkt, bei Linux muss man aber eventuell neu abspeichern (CRLF <-> LF).
Gruß
Hubert
Antworten