Entwickler-Ecke

Freeware Projekte - VokabelFit - Der individuelle VokabelTrainer


Wolle92 - Di 21.08.07 20:41
Titel: VokabelFit - Der individuelle VokabelTrainer
VokabelFit


Der Vokabel-Trainer "VokabelFit" ist ein individueller Vokabel-Trainer, in dem man eigene Abfrage-Listen erstellen kann.

Entwicklung von "VokabelFit"

Beta 1
Grundfunktionen enthalten...
-Abfrage
-Anzeigen der Sammlungen
-(Schlechte) Tippfehler-Kontrolle

Beta 1.1
Verbesserung der Tippfehler-Kontrolle,
allerdings immernoch sehr schlecht.

Version 1.0
- Eigene Vokabel-Listen erstellen
- Alte Listen bearbeiten
- Dateiverschlüsselung (eher: Unlesbarkeit)

- Man kann die Abfrage erst starten, wenn eine Liste gewählt ist

Version 1.1 & 1.2
- Nicht veröffentlicht
- Beta-Versionen des Versions-Checks

Version 1.3
- Versionscheck
- Integriertes Update

Version 1.4
-Kompatibilität mit Systemen ohne die brlndmm.dll
-Einstellen, ob beim Start ein Versionscheck durchgeführt werden soll
-Kompatibilität mit allen Windows-Systemen
-Statistikfehler korrigiert

Version 1.5
-Abfrage abbrechen
-Fremdwort-Feld beim erstellen von Vokabellisten wird bei neuer Vokabel automatisch ausgewählt
-Das Einstellungen-Menü funktioniert jetzt (zumindest da, wo es bis jetzt funktionieren soll)
-dreistellige Versionsnummern für geringfügige Änderungen

Version 1.91
Änderungen
- Update-Einstellungen: Jedes Mal, Nie, Alle X Tage, Einmal die Woche mit Nachfrage, Außerdem ein Button dafür in den Einstellungen
- Standard-Einstellung fürs Update: Nie
- Zufällige Abfrage-Reihenfolge einstellbar
- Passwort für die Einstellungen festlegbar
- Ergebnisdiagramm
- Abbrechen-Button
- Keine crypt.dll mehr nötig
- Update funktioniert ;)

Version 1.93
- Ergebnisdiagramm ist bei 100% richtig grün und nicht rot
- "Auswahl löschen" funktioniert
- Listenbereich wird bei Klick auf "Anzeigen" oder "Neu" gelöscht
- Versionsangabe ist nach unten rechts gewandert
- Copyright-Hinweis entfernt, kommt ins "Über..."-Fenster
- Anzahl der geladenen Vokabel wird angezeigt
- Version der Vokabelliste (VFL) wird angezeigt -> Andeutung auf baldiges Erscheinen der VFL v2.0 (siehe unten)

Ein Blick in die Zukunft
- Tippfehlerkontrolle
- VFL 2.0 - kleinere Dateien, bis zu drei Übersetzungen pro Vokabel
- Konfiguration und Listen werden in den Anwendungsdaten, nicht im Programmordner gespeichert
- Es kann kein Speicherort mehr für Listen ausgewählt werden, nur noch der Name


Regan - Di 21.08.07 20:58

Hy,
ich hab mir das Ding mal runtergeladen und folgendes festgestellt:

Sonst ist es ganz schön gemacht, auch wenn ich das laden der Vokabelliste noch nicht verstanden habe.
Weiter so. :zustimm:


Wolle92 - Mi 22.08.07 14:48

Hallo,
Antworten in gleicher Reihenfolge

Danke für deine Antwort und deine Kritik...

Grüße,
Wolle


Wonko - Do 23.08.07 12:50

Hallo,
ich bin beim Stöbern in der Open-Source-Units-Sparte auf einen Beitrag gestoßen, der möglicherweise für Deine Tippfehlerkontrolle nützlich ist: Stringvergleich mal anders (Fuzi logik) [http://www.delphi-forum.de/topic_Stringvergleich+mal+anders+Fuzi+logik_24184.html]
Das angesprochene Spülmittel hat nichts mit Vokabeln zu tun sondern heißt Fit.


noidic - Do 23.08.07 13:02

Sieht nach kurzem Test für mich so aus, als ob er die Vokabeln immer in der selben Reihenfolge abfragt. Das ist fürs lernen eher ungünstig, da man sich eher die Folge der Wörter denn die Übersetzung merkt :)

Was Regan mit dem Design hat weiss ich nicht, is doch in Ordnung so, es muss ja nich immer alles leuchten und blinken...


Regan - Do 23.08.07 13:15

user profile iconWolle92 hat folgendes geschrieben:


  • Tja... wenn, dann würde ich die ganze Datei unlesbar machen... die Frage ist, wie?


Guckst du hier [http://www.delphi-forum.de/viewtopic.php?p=418300#418300].

user profile iconnoidic hat folgendes geschrieben:
Was Regan mit dem Design hat weiss ich nicht, is doch in Ordnung so, es muss ja nich immer alles leuchten und blinken...

Ich will ja auch nicht, dass es leuchtet und blinkt, sondern die Anordnung der Buttons, das Verschwinden oder deaktiveiren von Buttons wäre doch auch schön. :wink:


Wolle92 - Sa 25.08.07 10:15

Ich seh grad, bei der Verschlüsselung, dass es doch einfacher wäre, nur i zu benutzen...
keypos hat immer genau den gleichen wert wie i...


Wolle92 - Mo 03.09.07 20:35

Veröffentlichung Version 1.0
Erste finale Version


Ich habe mich intensiv mit dem Programm beschäftigt und habe einen großen Sprung von Version 0.1.1 zu Version 1.0 hingelegt.

Neue Features
- Eigene Vokabel-Listen erstellen
- Alte Listen bearbeiten
- Dateiverschlüsselung (eher: Unlesbarkeit)

Beseitigte Bugs
- Man kann die Abfrage erst starten, wenn eine Liste gewählt ist

Kommende Verbesserungen
- Tippfehlerkontrolle (wurde fürs erste entfernt, bis sie ausgereift ist)
- Zufällige Abfrage-Reihenfolge
- Ergebnisdiagramm
- usw.

Ich hoffe, euch gefällt auch diese Version trotz der fehlenden Features.


Wolle92 - Fr 07.09.07 09:13

Veröffentlichung Version 1.3


Es wurde ein Versionscheck und ein automatisches Update neu eingebaut...

Was noch kommt (zusätzlich zu dem bereits genannten):
- Mehrere Antwortmöglichkeiten
- Abfangen von Fehlern bei fehlender Internetverbindung (für Versionscheck)

Für Anregungen, Lob und Kritik bin ich offen...


Nero123 - Sa 06.10.07 07:20

mt ALso bei fehlender Inetverbindung stürzt das Prgm ab...

Beim beispielliste war die statistik komisch-> anhang

Moderiert von user profile iconNarses: Grafik als GIF hochgeladen - war doch arg gross...


Danniolo - Di 09.10.07 21:53

Ich habe mir das Programm auch mal runtergeladen. Leider bekomme ich beim Start einen Fehler - irgendetwas mit "EIdSocketError". Anscheinend versucht das Programm eine Internetverbindung aufzubauen.
Nur erstens - wofür? Und zweitens - was ist, wenn man mal kein Internet hat?
Weil sich das Teil danach selbst beendet kann ich sonst nichts dazu sagen, bitte entferne diesen Verbindungsversuch - es ist weder notwendig noch in irgendeiner Form gerechtfertigt, nach Updates zu suchen - das könntest du höchstens als Funktion einbauen, die nur dann aktiviert wird, wenn man es anfordert und nicht einfach generall checkt.
Und wenn es schon sein muss, dann bitte ohne, dass das Programm sich beendet, wenn es keine Verbindung gibt.


Nero123 - Mi 10.10.07 11:05

wofür: um evtl zu updaten
was ist wenn kein internet?
dann hättest du das prgm nicht


Danniolo - Mi 10.10.07 17:30

Naja, wenn ich mal nicht im Internet bin und das Programm dennoch nutzen möchte?
Außerdem kommt bei mir aus Prinzip kein Programm ins Internet, dem ich nicht vertraue - deins wird also auch geblockt.


Wolle92 - Mi 10.10.07 20:19

1: Es wird eine Internetverbindung aufgebaut, um zu kontrollieren ob eine neuere Version zur Verfügung steht, wenn ja, dann wird der Benutzer gefragt, ob er diese nun installieren will
2: Das Problem bei fehlender Internetverbindung ist mir auch schon eingefallen, ich bin grade dabei, das Programm so zu ändern, dass es auch läuft, wenn man kein Delphi auf dem PC hat, genauso werde ich nur dann eine Internetverbindung aufbauen lassen, wenn die möglich ist (und ich herausgefunden habe, wie ich das kontrollieren kann)...
3: Danniolo, auch mein Programm wird bei dir ins Internet kommen, da die Versionskontrolle über HTTP läuft und das Versionsupdate über http://FTP... und wenn das nicht gehen würde, dann frage ich mich, wie du deine Beiträge hier schreibst...


Danniolo - Mi 10.10.07 21:09

Dein Programm wird bei mir kaum ins Internet kommen.. zumindest nicht, solange du nicht meine Firewall umgehst.
Ich weiß ja nicht, wie es bei dir ist - aber bei meiner kann ich Programmen verbieten, sich mit dem Internet zu verbinden.
Und das kann, glaube ich, selbst die Windows-Firewall :roll:
Aber es ist gut, dass du es in der nächsten Version "toleranter" gestalten willst ;)


Wolle92 - Do 11.10.07 16:31

ok, verstanden...
Also, bei bestehender internetverbindung wird auch jetzt schon gefragt, ob man aktualisieren will...
Und: Keine Angst, je neuer die Version, desto weniger Bugs


Wolle92 - So 14.10.07 09:31

Es dauert noch ein bis zwei Wochen, bis Version 1.4 veröffentlicht wird, aber ich möchte schonmal mitteilen:
Das integrierte Update funktioniert von Version 1.3 nur auf Windows Vista, da ich einen auf Windows XP nicht existierenden Registry-Key lese...
Dieser Fehler wurde in Version 1.4 behoben, allerdings muss das Update manuell erfolgen, also ZIP-Archiv runterladen und die alten Dateien ersetzen... (Die neue Datei config.ini muss mit in das Verzeichnis kopiert werden)

Das nur vorweg, damit es nicht zu Missverständnissen kommt.


Wolle92 - Di 16.10.07 17:56

Veröffentlichung Version 1.4


So, nach einigen Schwierigkeiten habe ich es nun endlich geschafft, Version 1.4 fertigzustellen.
Wie in meinem vorigen Post bereits beschrieben MUSS dieses Update manuell erfolgen, auch wenn bei Programmstart eine Meldung über eine neue Version erscheint.

Änderungen
-Kompatibilität mit Systemen ohne die brlndmm.dll
-Einstellen, ob beim Start ein Versionscheck durchgeführt werden soll
-Kompatibilität mit allen Windows-Systemen
-Statistikfehler korrigiert

Noch kommendes
Schreib ich später hin, weil ich grad keine Zeit hab

Update
1. Anhang runterladen
2. Anhang entpacken
3. Alle Dateien aus dem Anhang in das alte Programmverzeichnis, vorhandene Dateien ersetzen
4. Wichtig, auch die config.ini muss kopiert werden.
5. Eventuell schon existierende Listen vorher sichern und danach wieder in den Lists-Ordner kopieren

PS: Meine Güte, das nenne ich Timing... Morgen Latein-Arbeit!


F34r0fTh3D4rk - Di 16.10.07 18:03

user profile iconWonko hat folgendes geschrieben:
Hallo,
ich bin beim Stöbern in der Open-Source-Units-Sparte auf einen Beitrag gestoßen, der möglicherweise für Deine Tippfehlerkontrolle nützlich ist: Stringvergleich mal anders (Fuzi logik) [http://www.delphi-forum.de/topic_Stringvergleich+mal+anders+Fuzi+logik_24184.html]
Das angesprochene Spülmittel hat nichts mit Vokabeln zu tun sondern heißt Fit.


oder man verwendet:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
function DamerauLevenshteinDistance(str1, str2: string): integer;
var
  d: array of array of integer;
  i, j, cost: integer;
begin
  setlength(d, length(str1) + 1);
  for i := 0 to high(d) do
  begin
    setlength(d[i], length(str2) + 1);
    d[i, 0] := i;
  end;
  for j := 0 to high(d[0])  do
    d[0, j] := j;
  for i := 1 to high(d) do
    for j := 1 to high(d[0]) do
    begin
      if (str1[i] = str2[j]) then
        cost := 0 else
          cost := 1;
      d[i, j] := min(d[i - 1, j] + 1,      // Löschen
                 min(d[i, j - 1] + 1,      // Einfügen
                 d[i - 1, j - 1] + cost)); // Ersetzen
      if ((i > 1and (j > 1and (str1[i - 1] = str2[j - 2]) and (str1[i - 2] = str2[j - 1])) then
        d[i, j] := min(d[i, j], d[i - 2, j - 2] + cost);
    end;
  result := d[high(d), high(d[0])];
end;


mfg


Regan - Di 16.10.07 18:07

So ich habs mir mal wieder angeschaut. Ist schon ganz gut geworden. Allerdings fehlt mir noch eine "Abfrage abbrechen" Funktion, die nachher trotzdem eine Auswertung bringt.


Wolle92 - Di 16.10.07 18:33

Das ist mri auch eben aufgefallen, kommt dann in 1.5.., und einiges anderes auch...


Wolle92 - Fr 19.10.07 15:16

Veröffentlichung Version 1.5


OK, schon ist Version 1.5 da, allerdings gibt es nur einige geringfügige Änderungen...

Änderungen
-Abfrage abbrechen
-Fremdwort-Feld beim erstellen von Vokabellisten wird bei neuer Vokabel automatisch ausgewählt
-Das Einstellungen-Menü funktioniert jetzt (zumindest da, wo es bis jetzt funktionieren soll)
-dreistellige Versionsnummern für geringfügige Änderungen


Wolle92 - So 18.05.08 20:54

Die nächste Version wird bereits Version 1.9, da ich einige Änderungen, die ich schon längst machen und veröffentlichen wollte, erst jetzt einbauen kann, da ich in der Zwischenzeit meinen PC formatiert hab, zum Glück war der Source noch auf einem Server... in 2-3 Wochen wird die Version 1.9 veröffentlicht werden, kurz danach wird wahrscheinlich auch schon die 2.0 erscheinen...

Btw: Eventuell wird VokabelFit in einigen Monaten zu einem kommerziellen Programm, für DelphiForum-Nutzer wird dann allerdings eine Lizenz zur Verfügung stehen.


Wolle92 - Di 20.05.08 10:42

Vorweg: Aug Grund eines fehlenden Backslashes in den Ordnerangaben beim Update funktioniert dieses in der Version 1.5 nicht, das bedeutet, dass die Version 1.9 wieder manuell heruntergeladen werden muss und die Programmdateien ersetzt werden müssen...

Dieser Fehler ist in der Version 1.9 behoben, die zufällige Abfragereihenfolge und ein Ergebnisdiagramm werden auch enthalten sein, außerdem wird die crypt.dll nicht mehr benötigt, da die Funktionen direkt ins Programm integriert wurden...


ZeitGeist87 - Di 20.05.08 15:12

Hallo


Quelltext
1:
Die Ausnahme "Unbekannter Softwarefehler" (0x0edfade) ist in der Anwendung an der Stelle blablabla aufgetreten                    


Bei Klick auf OK:


Quelltext
1:
2:
3:
Exception EIdSocketError in module VokabelFit.exe at blabla.
Socket Error # 11001
Host not found.


Telefoniert dein Programm nach Hause???


Wolle92 - Di 20.05.08 15:14

wann kommt das?


ZeitGeist87 - Di 20.05.08 15:20

Gleich beim Programmstart ;-)


Wolle92 - Di 20.05.08 16:50

Hm... schon immer oder liefs auch mal?


ZeitGeist87 - Di 20.05.08 16:56

lief noch nie..


Wolle92 - Di 20.05.08 17:02

wann hast du es denn runtergeladen?
Version 1.5?


ZeitGeist87 - Di 20.05.08 19:02

Version 1.5

1 Minute vor meinem Post ;-)


Wolle92 - Di 20.05.08 19:10

Betriebssystem?


ZeitGeist87 - Di 20.05.08 19:21

W2K
Hinter Cisco-Hardwarefirewall und Linux Softwarefirewall =)

Geht jetzt =)
Problem liegt daran, dass du ohne zu fragen im Internet nach Updates suchst!!!


Wolle92 - Di 20.05.08 19:44

Eigentlich sollte der beim ersten Start fragen, ob er das darf...

Ach ne, ich glaub ich hab ne config.ini mit ins packet gepackt, in der das so eingestellt war, dass das nicht mehr gefragt wird...
Mein Fehler, sorry...


Wolle92 - Mi 21.05.08 15:21
Titel: Version 1.91
Veröffentlichung Version 1.91


Endlich bin ich so weit...
Nach einer Formatierung der Festplatte musste ich mit der VokabelFit-Entwicklung nochmal bei Version 1.4 anfangen, habe es aber geschafft, alle gewollten Änderungen einzubauen, auch noch einige neue:

Änderungen
- Update-Einstellungen: Jedes Mal, Nie, Alle X Tage, Einmal die Woche mit Nachfrage, Außerdem ein Button dafür in den Einstellungen
- Standard-Einstellung fürs Update: Nie
- Zufällige Abfrage-Reihenfolge einstellbar
- Passwort für die Einstellungen festlegbar
- Ergebnisdiagramm
- Abbrechen-Button
- Keine crypt.dll mehr nötig
- Update funktioniert ;)

Was kommt als nächstes?
Es wird am Wochenende bereits die Version 1.92 geben, da bei erstem Start des Programms eigentlich eine Meldung über die Update-Einstellungen erscheinen soll, was aber nicht passiert...

Ich schätze, gegen Anfang der Sommerferien (NRW) wird die Version 2.0 mit einem stark überarbeitetem Style und einigen weiteren hilfreichen Änderungen, wie zum Beispiel mehrere richtige Übersetzungen für jede Vokabel, veröffentlicht werden...

Update - Wichtig!
Da die Update-Funktion in Version 1.5 wegen eines fehlenden Backslashes in den Ordnernangaben nicht funktioniert, muss das Update manuell heruntergeladen werden!

1. Archiv aus erstem Post herunterladen
2. Archiv in beliebigen Ordner entpacken
3. Alle Dateien, auch die config.ini ins Programmverzeichnis von VokabelFit kopieren und die alten Dateien ersetzen, den lists-Ordner müsst ihr nicht kopieren bzw. könnt diesen in den bestehenden integrieren, da nur die Beispiel.vfl enthalten ist
4. Starten
5. Auf Extras -> Einstellungen klicken
6. Eventuell änderungen vornehmen
7. Speichern
8. VokabelFit benutzen ;)


MDX - Mi 21.05.08 16:53

Ganz nützliches Programm^^ :zustimm: :zustimm:


~Sushi~ - Sa 20.09.08 15:36

Ich weiß ja jetzt nicht obs schon gesagt wurde, aber immer wenn ich meine Liste speicher, verdoppelt sich der Inhalt, und der Button 'Auswahl löschen' scheint auch nicht zu funktionieren =/
Sonst find ich den rly nützlich gj


Wolle92 - Sa 27.09.08 19:55

Das mit dem Auswahl löschen kann ich bestätigen, dass sich der Inhalt verdoppelt hab ich noch nicht festgestellt...

Ich muss grad noch wieder den Fehler finden, wieso plötzlich keine Antwort mehr richtig ist...

Ich mache ne Liste mit den Einträgen
blubb -> abc
blubber -> abcd

Dann gebe ich bei blubb abc ein und bekomme dann "Falsch! Richtig: abc"...

Sobald das wieder läuft (was gleich der Fall sein wird) schau ich mal nach dem "Auswahl löschen", gibt dann wahrscheinlich morgen nen kleineres Update!

Edit: Okay, das läuft wieder, jetzt krieg ich dafür nen komplett roten Kreis wenn ich alles richtig gemacht habe...
Edit2: Ach, das war schon länger nen Fehler...


Wolle92 - So 16.11.08 17:11

Veröffentlichung Version 1.93


So, hat zwar etwas gedauert, aber jetzt kommt die Version 1.93...

Änderungen
- Ergebnisdiagramm ist bei 100% richtig grün und nicht rot
- "Auswahl löschen" funktioniert
- Listenbereich wird bei Klick auf "Anzeigen" oder "Neu" gelöscht
- Versionsangabe ist nach unten rechts gewandert
- Copyright-Hinweis entfernt, kommt ins "Über..."-Fenster
- Anzahl der geladenen Vokabel wird angezeigt
- Version der Vokabelliste (VFL) wird angezeigt -> Andeutung auf baldiges Erscheinen der VFL v2.0 (siehe unten)

Was kommt als nächstes?
Als nächstes gibt es die VFL v2.0, die mehrere Übersetzungen für eine Vokabel speichert und mit xor verschlüsselt wird, damit die Dateien nicht so überdimensional groß sind...
- Konfiguration und Listen werden in den Anwendungsdaten, nicht im Programmordner gespeichert
- Es kann kein Speicherort mehr für Listen ausgewählt werden, nur noch der Name