Vokbabeltrainer Probleme!

Übersicht BlitzBasic BlitzPlus

Neue Antwort erstellen

 

Roggi

Betreff: Vokbabeltrainer Probleme!

BeitragSa, März 11, 2006 17:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,

ich habe mich in den letzten Tagen mit BlitzPlus beschäftigt und wollte nun ein Vokabeltrainer in B+ machen. Mit mir programmiert BlitzChecker noch mit. Wir sind schon ziemlich weit, doch leider haben einige Probleme bei denen wir nicht weiter wissen. Keine Angst es sind nur 2, bisher Laughing
Wir werden hier den kompletten Code posten, doch die Vokabel Datei liegt nicht bei und auch der Menühintergrund nicht.

1. Wir haben einen virtuellen Tester bei welchen Links die englischen und rechts das freie Feld, für die Deutschen ist. Jetzt kann man eingeben. Und wenn man zum Schluss fertig ist und man drückt auf Prüfen, dann sollen die Fehler berechnet werden und die richtige Prozent anzahl. Doch diese Berechnung funktioniert nicht. Sie spuckt bei allen richtigen nur 6 Richtige aus. Wir wissen nicht woran es liegen könnte.

2. Im Menü kann man prima alles anklicken doch sobald man einen Test gemacht hat und wieder im Menü ist, geht nichts mehr. Man kann nichts mehr anklicken und es passiert auch nichts. Bitte helft uns.

Wenn ihr noch weitere Ideen habt könnt ihr sie hier hinschreiben.

Danke schonmal
MfG Tom

Code:
Code: [AUSKLAPPEN]
SeedRnd MilliSecs()
Global datapath$ = CurrentDir()+"data\"
Global vokzahl,testfenster


dateizl = OpenFile(datapath$+"Unit011.txt")
Lower (dateizl)
Trim (dateizl)
If Not dateizl Then Notify "Die Datei 'Unit011.txt' im Verzeichnis "+datapath$+" existiert nicht."
Repeat
If KeyDown(1) Then End
   ReadLine dateizl
   realsize = realsize + 1
Until Eof(dateizl)
vokzahl = 20
ab = 10
If vokzahl <= 1 Then Notify "Es wurden zu wenig Vokabeln eingegeben."
Dim vokabel$(10000)
Dim antwort$(10000,2)
CloseFile dateizl
Global number[10000],answerfield[10000]

dateizl = OpenFile(datapath$+"Unit011.txt")
If Not dateizl Then Notify "Die Datei 'vokabeln.txt' im Verzeichnis "+datapath$+" existiert nicht."
For i = 1 To realsize
   if i => ab and cnt <= vokzahl then
      cnt = cnt + 1
      temp_string$ = ReadLine(dateizl)
      vokabel$(cnt) = Left(temp_string$,Instr(temp_string$,";")-1)
      antwort$(cnt,0) = Right(temp_string$,Instr(temp_string$,";")-1)
      instring = instr(temp_string$,"\")
      if instring > 0 then
         antwort$(cnt,1) = left(antwort$(cnt,0),instring)
         antwort$(cnt,2) = right(temp_string$,len(temp_string$)-instring)
      else
         antwort$(cnt,1) = antwort$(cnt,0)
         antwort$(cnt,2) = antwort$(cnt,0)
      endif
   endif
Next
CloseFile dateizl

Global menuefenster = CreateWindow("VirtualTest - Menü          programmiert von Lukas Klein und Tom Roggenbuck, (C) by ML Soft",ClientWidth(Desktop())/2-400,ClientHeight(Desktop())/2-300,800,600,Desktop(),33)
mencanvas = CreateCanvas(0,0,800,600,menuefenster)
backmen = LoadImage(datapath$+"menback.mlp")
SetBuffer CanvasBuffer(mencanvas)
For i = 1 To 600 Step 2
   DrawImageRect backmen,0,0,0,0,800,i
   FlipCanvas mencanvas
Next

startbutton = CreateButton("Virtuellen Test erstellen",300,200,200,20,mencanvas)
infobutton = CreateButton("Information",300,230,200,20,mencanvas)
wwwbutton = CreateButton("www.mlsoft.de.pn",300,260,200,20,mencanvas)
tourbutton = CreateButton("Infotour starten",300,290,200,20,mencanvas)
endbutton = CreateButton("Beenden",300,320,200,20,mencanvas)

Repeat
If KeyDown(1) Then End
If KeyHit(1) Then End
   event = WaitEvent()
   If event = $401 Then
      Select EventSource()
         Case startbutton
            CreateTest()
         Case settingsbutton
            
         Case newbutton
            
         Case importbutton
         Case exportbutton
            
         Case infobutton
            Notify "Information über VirtualTest"+Chr$(13)+Chr$(13)+"programmiert von Lukas Klein und Tom Roggenbuck"+Chr$(13)+"© by ML Soft"
         Case wwwbutton
            ExecFile "http://Homepageadresse kommt noch"
         Case tourbutton
            Notify "Dieses Feature existiert noch nicht!"
         Case endbutton
            End
      End Select
   EndIf
   Text 0,0,">>>"+pruefe$+"<<<"
Until event = $803
End

Function CreateTest()

   HideGadget menuefenster
   testfenster = CreateWindow("VirtualTest - Vokabeltest",ClientWidth(Desktop())/2-250,ClientHeight(Desktop())/2-((vokzahl*30+70)/2),500,vokzahl*30+70,Desktop(),49)
   upcanvas = CreateCanvas(0,0,500,30,testfenster)
   SetBuffer CanvasBuffer(upcanvas)
   ClsColor 236,233,216
   Cls
   font = LoadFont("Arial",20,0,0,0)
   Color 255,0,0
   SetFont font
   Text 10,0,"ENGLISCH",0,0
   Text 230,0,"DEUTSCH",0,0
   FlipCanvas upcanvas
   SetBuffer BackBuffer
   For i = 1 To vokzahl
      number[i] = i   
      
      CreateLabel(vokabel$(number[i]),5,i*30+10,200,20,testfenster)
      answerfield[i] = CreateTextField(210,i*30+10,200,20,testfenster)
   Next
   okbutton = CreateButton("Prüfen",150,vokzahl*30+40,200,20,testfenster)
   
   Repeat
   If KeyDown(1) Then End
      event = WaitEvent()
      If event = $401 Then
         Select EventSource()
            Case okbutton
               auswertung(check(),vokzahl)
         End Select
      EndIf
   Until event = $803
   HideGadget testfenster
   ShowGadget menuefenster
   
End Function

Function check()
   richtige = 0
   For i = 1 To vokzahl
      If antwort$(number[i],1) or antwort$(number[i],2) = TextFieldText(answerfield[i]) Then richtige = richtige + 1
      ;Notify ">"+vokzahl+"<>"+vokabel$(number[i])+"<"
   Next
   Return richtige
End Function

Function auswertung(richtige,von)
   prozent# = richtige*100/von
   ausfenster = CreateWindow("VirtualTest - Auswertung",ClientWidth(Desktop())/2-200,ClientHeight(Desktop())/2-75,400,150,Desktop(),49)
   auscanvas = CreateCanvas(0,0,400,300,ausfenster)
   SetBuffer CanvasBuffer(auscanvas)
   font = LoadFont("Tahoma",20,0,0,0)
   SetFont font
   Color 0,255,0
   Text 5,5,"Sie haben "+richtige+" Vokabeln von "+von+" gewusst.",0,0
   Text 5,30,"Das sind "+prozent#+"%.",0,0
   Rect 5,100,prozent#*3,30,1
   Color 255,0,0
   Rect 5,100,300,30,0
   FlipCanvas auscanvas
   ok = CreateButton("OK",185,135,30,20,auscanvas)
   Repeat
      event = WaitEvent()
      If event = $401 And EventSource() = ok Then ShowGadget menuefenster : FreeGadget testfenster : FreeGadget ausfenster
   Until event = $803
End Function

Cardonic

BeitragSa, März 11, 2006 18:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

zum ersten
Code: [AUSKLAPPEN]
prozent# = 100/von*richtig

glaub ich jedenfalls
[edit] das war gar nicht gefragt (tut mir leid Embarassed ) und euer code macht das selbe [/edit]


mfg Cardonic
If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet.
 

Roggi

BeitragMi, März 22, 2006 16:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hat wohl keiner so richtig ne Antwort darauf oder?^^

MfG Tom
 

naibaf7

BeitragMi, März 22, 2006 17:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Könnt mir das Problem mal anschauen Cool ...... köntest du mal den inhalt der fehlenden Datei Zeigen ?
^
My Pc:
MSI 790FX-GD70, Phenom X4 955BE, 2x2GB DDR3-1600, 8800GTS-512, WD 640GB + Samsung 160GB, Scythe Kaze Master
 

Roggi

BeitragMi, März 22, 2006 17:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
huge;riesengroß
crowded;überfüllt
deserted;menschenleer
powerful;mächtig
nation;Nation
yet;jedoch
movie;Film
space;Weltraum
business;Geschäft
to fascinate;fesseln
major;wichtig
capital city;Hauptstadt
foot;Fuß
mile;Meile
midnight;Mitternacht
to elect;wählen
to vote for;stimmen für
time zone;Zeitzone
stripe;Streifen
state;Staat


Hier bitte. Gerne mach ich sowas.
MfG Tom Wink
 

$tankY

BeitragFr, Apr 14, 2006 12:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Irgendwie komme ich auf die Bedeutung von number[10000] nicht, was genau soll dieses Array bewirken?

Neue Antwort erstellen


Übersicht BlitzBasic BlitzPlus

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group