Autor Beitrag
.gaLLardo
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 21.03.07 19:11 
Hallo liebe PROgrammierer,

ich habe in der Schule den Auftrag bekommen ein ausführliches Programm zum Thema Geschichte (um den Inhalt habe ich mich schon gekümmert) bekommen. Es soll ein Programm sein, dass späteren Klassen hilft sich auf den Stoff der bevorstehenden Klassen vorzubereiten.
Das zur Vorgeschichte.
Ich möchte nun gerne ein Hilfe integrieren. Diese soll per "Wortsuche" (d.h. wie bei Google, ich gebe ein Suchwort ein und der PC gibt alles an, was er darüber findet) initalisieren.
Hierfür benötige ich nun eine Syntax, die ich dann in die Unit eintragen kann.

Für Verbesserungsvorschläge bin ich jederzeit offen.

Grus .gaLLardo
ssb-blume
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 375
Erhaltene Danke: 7

XP, W7, W8
Deutschland
BeitragVerfasst: Mi 21.03.07 19:28 
in welcher Form liegt denn die Hilfe vor?

_________________
Brain: an apparatus with which we think we think.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mi 21.03.07 19:33 
Moin!

user profile icon.gaLLardo hat folgendes geschrieben:
Für Verbesserungsvorschläge bin ich jederzeit offen.

:lol: der war gut... 8)

Du hast doch noch gar nichts vorgestellt (ausser einer vagen Idee), was sollen wir denn da verbessern?! ;)


cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
.gaLLardo Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 21.03.07 23:33 
Es soll eine "Suchhilfe" sein, mit welcher der Nutzer bei Bedarf einen Suchbegriff eingeben kann und die Hilfe dann Texte (die von mir im Programm hinterlegt sind) ausgibt. D.h. ich müsste Hilfedatein anlegen, mit den jeweiligen Texten und dann per IF-Schleife die Datein durchsuchen lassen oder? Und das dann eben ausgeben lassen?

Grus
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Do 22.03.07 00:29 
If Schleifen gibts zwar nicht ( ;) ) aber dein Plan scheint im groben und ganzen richtig zu sein.

Kennst du eigentlich den EDH?

Evt. richtest du pro Thema / oder welche Gliederung du auch immer hast, eine Textdatei ein.

Im Endeffekt gehst du dann mit einer For-Schleife die einzelnen Dateien durch und schaust nach ob der Suchbegriff in der Datei vorkommt. Wenn ja, lädst du die Textdatei in einer Memo oder sowas.


Wo genau liegt denn dein Problem?


edit: okay, ich geb dir mal die Stichworte, wenn du lernst die entsprechenden Befehle zu benutzen sollte die Programmierung kein Problem darstellen:


  1. Herausfinden wie die Dateiennamen der Artikeldateien sind: Suche in: Delphi-Forum, Delphi-Library FINDFIRST FINDNEXT oder ganz einfach Suche in: Delphi-Forum, Delphi-Library TFILELISTBOX

  2. Wenn du eine Liste aller Dateiennamen der Artikeldateien hast (vorliegend als TSTringList oder TStrings) kannst du mit einer For-Schleife Dateinnamen für Dateinnamen durchgehen. Lade den Inhalt der Artikeldatei mit Suche in: Delphi-Forum, Delphi-Library LOADFROMFILE in eine Suche in: Delphi-Forum, Delphi-Library TSTRINGLIST.

  3. Gehe mit einer For-Schleife Zeile für Zeile der StringList durch und überprüfe mit dem Befehl Suche in: Delphi-Forum, Delphi-Library POS ob sich der Suchbegriff in einer der Zeilen befindet. Wenn ja, kannst du die For-Schleife mit Suche in: Delphi-Forum, Delphi-Library EXIT abbrechen und den Dateienpfad der durchsuchten Datei in die Suchergebnisliste hinzufügen. Als Suchergebnisliste würde sich eine weitere StringList anbieten, die du mit Suche in: Delphi-Forum, Delphi-Library STRINGLIST.ADD füllst. Wenn alle Dateinnamen überprüft wurden kannst du die Stringliste mit Suche in: Delphi-Forum, Delphi-Library LISTBOX.ASSIGN(SUCHERGEBNISLISTE) die Suchergebnisliste in einer TListbox o.ä. anzeigen.

  4. Natürlich soll der User nun auch einen Artikel angezeigt bekommen. Schau dir dazu das Ereigniss OnClick der Listbox an. Den Text der Artikeldatei kannst du wieder mit Suche in: Delphi-Forum, Delphi-Library LOADFROMFILE in z.B. ein Memo bekommen. Welche Zeile ausgewählt wurde findest du mit Suche in: Delphi-Forum, Delphi-Library LISTBOX1.ITEMINDEX heraus.


Hab gerade noch gelesen was MrSaint geschrieben hat: Eine HTML-Lösung würde sich sicherlich sehr gut machen. Im Prinzip geht das dann genauso, mit dem Unterschied, dass du keine Txt-Datei sondern eine HTML-Datei pro Artikel erstellst. Und als Anzeigemedium kein Memo sondern eben besagten Suche in: Delphi-Forum, Delphi-Library TWEBBROWSER.

gruss.


Zuletzt bearbeitet von Karlson am Do 22.03.07 00:42, insgesamt 2-mal bearbeitet
MrSaint
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1033
Erhaltene Danke: 1

WinXP Pro SP2
Delphi 6 Prof.
BeitragVerfasst: Do 22.03.07 00:37 
Mal ein kleines Brainstorming ;)

Ich würde vorschlagen gleicheinen Schritt weiter zu gehen: Mach doch gleich alles auf HTML-Basis. Dann kann man den Text auch schön formattieren und Bilder etc. einfügen. Falls es nicht allzu kompliziert sein soll (generell würde ich eine richtige Datenbank nehmen, aber das ufert etwas aus), würde ich die HTML-Dateien einfach in einer definierten Ordnerstruktur im Programmverzteichnis ablegen. Die Keywords mit denen du suchen willst kannst du dann z.B. zentral in einer INI-Datei o.ä. ablegen in der du dann immer ein Paar aus Keyword und anzuzeigender HTML-Datei speicherst. HTML-Dateien kannst du per TWebbrowser anzeigen.
Generell denke ich aber, dass bei einem solchen Programm nicht nur gesucht werden können sollte, sondern der Stoff auch irgendwie gegliedert abrufbar sein sollte. Also z.B. alles für die 5.,6.,7.,... Klasse auf einen Klick abrufbar etc. Das könnte mit der Ordnerstruktur realisiert werden...




MrSaint

_________________
"people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems