Autor Beitrag
Wolle92
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Di 21.08.07 19:41 
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
Einloggen, um Attachments anzusehen!


Zuletzt bearbeitet von Wolle92 am So 16.11.08 16:15, insgesamt 8-mal bearbeitet
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Di 21.08.07 19:58 
Hy,
ich hab mir das Ding mal runtergeladen und folgendes festgestellt:
  • Wenn ich gleich auf Abfrage starten gehe, kommt ein Fehler, es geht nichts mehr und ich muss das Programm schließen :(
  • Beim Maximieren passt sich nur das Headerlabel an, nicht aber die anderen Element
  • Der Name gefällt mir sehr gut, erinnert ein bisschen an das Spülmittel
  • ich wurde nach drink gefragt: Da habe ich Getränk eingegeben. Es war falsch :!: :?: :arrow: besser: (to) drink
  • Schön wäre, wenn ich auf die falschen Ergebnisse richtige Antworten (wenigstens in der Auswertung) erhalten würde.
  • Ein kleines Design täte dem Programm auch gut. :wink:
  • Vielleicht ein Diagramm (Kreis), welches mir die richtigen und falschen Ergebnisse anzeigt.
  • Schön wäre auch noch, wenn du die Ergebnisse nicht schon in der .vfl-datei preisgeben würdest. dann wenigstens ne zeit angeben, in der das Wort einegeben werden musste.

Sonst ist es ganz schön gemacht, auch wenn ich das laden der Vokabelliste noch nicht verstanden habe.
Weiter so. :zustimm:
Wolle92 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Mi 22.08.07 13:48 
Hallo,
Antworten in gleicher Reihenfolge

  • Den fehler habe ich auch schon festgestellt, wird in der nächsten Version auch behoben sein
  • Die Maximierung habe ich noch nicht beachtet... muss maa schauen ob ich entweder das maximieren verbiete oder eben das Layout anpasse
  • Hmm? Welches Spülmittel hat den Vokabel im Namen?
  • Da man später eigene Lektionen erstellen kann, ist es jedem selbst überlassen, wie er es formuliert... Aber für die Beispiel-Liste werde ich das wohl noch anpassen
  • Das hat mich gestern beim Lateinlernen, wofür ich das Programm eingentlich kurzfrisitg entwickelt habe, auch gestört... das wird unbedingt geändert
  • Naja, Design wird wohl noch nicht schon in der Beta 2 stecken, aber es kommt...
  • für das Diagramm wurde rechts schon Platz gelassen, die Implementierung ist aber noch nicht erfolgt...
  • Tja... wenn, dann würde ich die ganze Datei unlesbar machen... die Frage ist, wie?

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

Grüße,
Wolle
Wonko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 69



BeitragVerfasst: Do 23.08.07 11: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)
Das angesprochene Spülmittel hat nichts mit Vokabeln zu tun sondern heißt Fit.
noidic
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 851

Win 2000 Win XP Vista
D7 Ent, SharpDevelop 2.2
BeitragVerfasst: Do 23.08.07 12: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...

_________________
Bravery calls my name in the sound of the wind in the night...
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Do 23.08.07 12: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.

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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Sa 25.08.07 09: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Mo 03.09.07 19: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Fr 07.09.07 08: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
Hält's aus hier
Beiträge: 11
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.10.07 06: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...
Einloggen, um Attachments anzusehen!
_________________
Wer braucht eine Signatur?
Danniolo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 693



BeitragVerfasst: Di 09.10.07 20: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
Hält's aus hier
Beiträge: 11
Erhaltene Danke: 1



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

_________________
Wer braucht eine Signatur?
Danniolo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 693



BeitragVerfasst: Mi 10.10.07 16: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Mi 10.10.07 19: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 FTP... und wenn das nicht gehen würde, dann frage ich mich, wie du deine Beiträge hier schreibst...
Danniolo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 693



BeitragVerfasst: Mi 10.10.07 20: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Do 11.10.07 15: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: So 14.10.07 08: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1296

Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
BeitragVerfasst: Di 16.10.07 16: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!
Einloggen, um Attachments anzusehen!
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Di 16.10.07 17: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)
Das angesprochene Spülmittel hat nichts mit Vokabeln zu tun sondern heißt Fit.


oder man verwendet:
ausblenden 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
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Di 16.10.07 17: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.