![]() |
Re: BrainyTrainy - Vokabeltrainer
Hi,
vielen Dank. Ich werd mal schauen, wie ich das einbaue. Werd auch nochmal bei Google schauen. Merci beaucoup |
Re: BrainyTrainy - Vokabeltrainer
Hallo,
habe jetzt einiges an meinem Vokabeltrainer geändert! Unter anderem bin ich von den Listboxen auf schnelle Stringlists umgestiegen und habe weitere Funktionen wie "Vokabeln kopieren" oder "Vokabeln drucken" eingefügt! Auch wurde der Import/Export überarbeitet und die speicherintensive ShellTreeView-Komponente herausgenommen! Zudem ist der BrainyTrainy absofort als Setup-Datei verfügbar! Die Tip-Funktion habe ich bis jetzt noch nicht umgeändert, da ich erstmal alles andere in's Reine bringen wollte und die oben genannten Erweiterungen schon sehr lange auf meiner ToDo-Liste standen! Aber ich hab mich schon damit beschäftigt!! Ich würde euch einfach nochmal bitten das Programm zu testen und mir evtl. Bugs mitzuteilen! Wäre echt cool von euch :) Vielen Dank ![]() |
Re: BrainyTrainy - Vokabeltrainer
Moin,
hab jetzt auch mal den Algorithmus für die Tipp-Funktion eingebaut, sowie die Tippfunktion etc. überarbeitet. Die Installerversion ist wieder abgesetzt! Ganz normale EXE-Datei wieder! Ich brauch für den BT keinen Installer, nur unnötige KBs und eine einzelne Datei installieren? Nicht nötig! History: ![]() Direktdownload: ![]() Über Statemenst, Bug-Reports, Ergänzungen/Vorschläge etc. freue ich mich immer wieder :) Vielen Dank |
Re: BrainyTrainy - Vokabeltrainer
Habe sowas auch mal geschrieben, Code ist leider verlorengegangen habe nur eine alte Version ist auch ein bischen her wo ich die geschrieben hatte:
Delphi-Quellcode:
unit Vok;
interface uses StdCtrls, IniFiles, SysUtils, Dialogs; const E_LOADVOK = ' Error in FUNCTION LoadVok '; E_WRITEVOK = ' Error in FUNCTION WriteVok '; E_READVOK = ' Error in FUNCTION ReadVok '; E_COMPVOK = ' Error in FUNCTION CompVok '; type TVok = class public Vokabel: array of array of String; // Dynamischer Array in dem die Vokabeln abgelegt werden VokRiZ: array of array[0..1] of byte; // Hier wird gezählt wie oft eine Vokabel richtig war VokFaZ: array of array[0..1] of byte; // Hier wird gezählt wie oft eine Vokabel falsch war Vokakt: integer; // Aktuelle Vokabel IniFile: TIniFile; // Name der Aktuellen Vokabel Datei VokAbf: smallint; // Enthält die Nummer der abgefragten bedeutung (* Allgemein: Sollte ein Fehler beim laden auftreten gibt die funktion den Wert False zurück *) function LoadVok(FileN: String): Boolean; // Laden der Vokabeln function WriteVok(FileN: String): Boolean; // Speichert Vokabeln function ReadVok(InpField: TEdit; OutField: TLabel): Boolean; // Liest nexte Vokabel ein function CompVok(VString: ShortString; var IX: Smallint): Boolean; // vergleicht die Vokabeln end; implementation var Voktype: TVok; function TVok.LoadVok(FileN: String): Boolean; var VNum: integer; VBed: smallint; begin try (*BEGIN*) Voktype.IniFile := TiniFile.Create(FileN); for VNum:=0 to 2147483647 do begin // Max Anzahl an Vokabeln werden hochgezählt for VBed:=0 to 32767 do begin // Max Anzahl an Bedeutungen pro Vokabel werden hochgezählt Voktype.Vokabel[VNum,VBed] := IniFile.ReadString(inttoStr(VNum),inttoStr(VBed),''); // Läd Vokabeln if Voktype.Vokabel[VNum,VBed] = '' then Break; // Wenn Alle Bedeutungen geladen wurden Unterbrechen end; if Voktype.Vokabel[VNum -1,0] = '' then Break; // Wenn Max Anzahl an Vokabeln geladen wurden Unterbreche end; (*END*) Result := True; except Result := False; end; end; function TVok.WriteVok(FileN: String): Boolean; var VNum: integer; VBed: smallint; begin try (*BEGIN*) Voktype.IniFile := TiniFile.Create(FileN); for VNum:=0 to 2147483647 do begin // Max Anzahl an Vokabeln werden hochgezählt for VBed:=0 to 32767 do begin // Max Anzahl an Bedeutungen pro Vokabel werden hochgezählt IniFile.WriteString(inttoStr(VNum),inttoStr(VBed),Voktype.Vokabel[VNum,VBed]); // Schreibt Vokabeln if Voktype.Vokabel[VNum,VBed +1] = '' then Break; // Wenn Alle Bedeutungen geladen wurden Unterbrechen end; if Voktype.Vokabel[VNum +1,0] = '' then Break; // Wenn Max Anzahl an Vokabeln geladen wurden Unterbreche end; (*END*) Result := True; except Result := False; end; end; function TVok.ReadVok(InpField: TEdit; OutField: TLabel): Boolean; var VOKNUM: smallint; begin try (*BEGIN*) if Voktype.CompVok(InpField.Text,VOKNUM) = False then MessageDlg(E_COMPVOK, mtWarning, [mbOk], 0); // Sollte ein Fehler bei CompVok auftreten gibt es eine Fehlermessage (*END*) Result := True; except Result := False; end; end; function TVok.CompVok(VString: ShortString; var IX: Smallint): Boolean; var i: Smallint; Ahigh: Smallint; begin try (*BEGIN*) Ahigh := high(Voktype.Vokabel[Voktype.VokAkt]); // Ermittle die größe des Arrays IX := -1; for i:=0 to Ahigh do begin if VString = Voktype.Vokabel[Voktype.VokAkt,i] then begin // Vergleiche den String mit dem Array IX := i; // Ergebniss wird ausgeliefert Break; end; end; (*END*) Result := True; except Result := False; end; end; end. |
Re: BrainyTrainy - Vokabeltrainer
Na da haste aber ein ganz kleines bischen bei andersensoft.com abgekupfert.
Was???? Grüße johnny |
Re: BrainyTrainy - Vokabeltrainer
Liste der Anhänge anzeigen (Anzahl: 2)
Also bei mir bekomme ich nur einen Fehler!
|
Re: BrainyTrainy - Vokabeltrainer
Hi,
mir gefällt Dein Programm schon sehr gut. Ich hätte da noch einen Vorschlag: Ich würde mir für ein solches Programm wünschen, ich könnte auch verben konjugieren (oder deklinieren). Was ich meine wäre so etwas wie:
Code:
Das ganze noch für verschiedene Zeiten (Presens, perfekt, ...) wäre ganz großartig!
Deutsch: Portugiesisch:
reden falar ich rede eu falo du redest vc fala er, sie, es redet fala wir reden falamos ihr redet falam sie reden falam Viel Spaß noch! Würde mich freuen etwas neues zu hören! |
Re: BrainyTrainy - Vokabeltrainer
Hallo,
wo steht denn wie ich alles wieder lösche? Ich hab die *.zip runter geladen und direkt daraus ausgeführt. Wie lösche ich jetzt die _alle_ Vokabeln? :gruebel: MfG freak |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:33 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-2025 by Thomas Breitkreuz