Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programm bleibt an letzer DB-Datei hängen.. (https://www.delphipraxis.net/16594-programm-bleibt-letzer-db-datei-haengen.html)

PhöniX 19. Feb 2004 17:54


Programm bleibt an letzer DB-Datei hängen..
 
Und noch ne Frage..
Erstmal der Code:
Delphi-Quellcode:
var
Gesamt: Integer;
  Richtig: Integer;
  GesamtSoll: Integer;
  zufallszahl: Integer;
  LatEng: Integer;
  maxiLat: Integer;
  maxiEng: Integer;
  SollZahl: Integer;
  datenumber: Integer;
  x: Boolean;
  Deutsch: Array[1..4] of String;
  DeutschG: String;
  DeutschEng: Array[1..4] of String;
  DeutschE: String;
  StringList: TStringList;
  BeforeAdd: Integer;
  AfterAdd: Integer;
  Counter: Integer;
 //Main ist die Form
[...]
 //In einer Procedure ÓKKLICK steht dann
begin
      beginning:
      FormVocsEng.TableEng.first;
      Main.maxiEng := FormVocsEng.TableEng.RecordCount;
      Main.zufallszahl := random(Main.maxiEng);
      Main.SollZahl := 0;
      repeat
       application.processmessages;
       FormVocsEng.TableEng.next;
       inc(Main.SollZahl);
      until Main.SollZahl = Main.zufallszahl;
      BeforeAdd := StringList.Count;
      with Main.StringList do
       begin
        Add(FormVocsEng.TableEng.FieldByName('Englisch').AsString);
       end;
      AfterAdd := StringList.Count;
      if BeforeAdd = AfterAdd then
       goto beginning;
      OK.Caption := 'OK';
     end;
Dann hab ich noch ja eine Datenbank und in der stehen so 15 Daten (Vokabeln)..
Wenn ich jetzt das Programm starte und einige Zeit ausführe (sprich=mehrmal auf den Button drücke), dann erscheint ja irgendwann mal die letzte Datenbank-Datei..Und wenn ich dann weitermache, dann kommt wieder diese Datei und dann wieder und immer so weiter... Das Programm bleibt da also hängen..
Weiß einer woran das liegen könnte oder ist das zu wenig Code?

PhöniX 21. Feb 2004 11:38

Re: Programm bleibt an letzer DB-Datei hängen..
 
:thuimb: hervorheb

PhöniX 23. Feb 2004 16:04

Re: Programm bleibt an letzer DB-Datei hängen..
 
Ich probiers noch ein letztes mal zu pushen... :zwinker:

grayfox 23. Feb 2004 17:42

Re: Programm bleibt an letzer DB-Datei hängen..
 
hallo phönix!

bevor du dir vom vielen pushen einen geschwollenen daumen holst... :mrgreen:
leider werd ich aus deinem code-schnipsel nicht schlau - ohne glaskugel geht da rein gar nichts ;)
zunächst mal zur begriffsbestimmung.

Zitat:

Dann hab ich noch ja eine Datenbank und in der stehen so 15 Daten (Vokabeln)..
Wenn ich jetzt das Programm starte und einige Zeit ausführe (sprich=mehrmal auf den Button drücke), dann erscheint ja irgendwann mal die letzte Datenbank-Datei..Und wenn ich dann weitermache, dann kommt wieder diese Datei
was verstehst du unter datenbank und datei ?
wenn ich es richtig in erinnerung habe, dann verwendest du die BDE und arbeitest mit paradox-tabellen, stimmts?

aaahhh :!:
tu das beginning...goto beginning weg! das schmerzt!
delphi hat doch so schöne möglichkeiten, um eine programmschleife zu gestalten.

Zitat:

Und wenn ich dann weitermache, dann kommt wieder diese Datei und dann wieder und immer so weiter
das liegt vermutlich an deinem beginning ... goto beginning *hrhr* :mrgreen:
es wäre einfacher, wenn du in kurzen worten erklärst, was das programm tun soll

mfg, stefan

PhöniX 23. Feb 2004 18:27

Re: Programm bleibt an letzer DB-Datei hängen..
 
Hmm ja.. Endlich antwortet mal jemand :zwinker:

Ja ich verwende paradox und tabelle und mit datei meine ich datensatz

Vorweg: Ich will nichts mit Select...From...Where machen...
Ich will mit dem Befehl die Datenbank solange hochzählen(Table.next) bis Sollzahl = zufallszahl..nun sollte ein datensatz ausgewählt sein, der dann in nem DBLabel erscheint. Aber falls die Vokabel schon vorher abgefragt wurde, soll eine neue Vokabel abgefragt werden...
Darum das goto.. :zwinker:

grayfox 23. Feb 2004 18:45

Re: Programm bleibt an letzer DB-Datei hängen..
 
Zitat:

Endlich antwortet mal jemand
aber nur, weil faschingmontag ist :party: *gg*

Zitat:

Ich will nichts mit Select...From...Where machen
warum eigentlich nicht? das oft viel einfacher als sich mit tables herumschlagen...

ok, nochmal zusammengefasst... du hast eine tabelle mit vokabel. brav. und wie sieht die aus? welche felder befinden sich darin?
hoffentlich unter anderem auch ein logisches feld, zb 'abgefragt', mit dem du kennzeichnest, dass dieses vokabel bei diesem test schon behandelt wurde und nicht mehr aufgerufen werden soll.

Zitat:

die Datenbank solange hochzählen
:gruebel:
jeder datensatz hat eine nummer, richtig? (zb eine autoinc ID)
und mit locate... springst gleich zu dem wünschten satz

wenn ich vor dem problem stünde, ein vokabelabfrageprogramm zu erstellen, dann würde ich so beginnen:

- zettel & schreiber
- bildschirmmasken mit ein- und ausgaben skizzieren
- ablaufplan
- tabellenstruktur

und das ganze nach und nach verfeinern.
zu dieser zeit läuft noch kein pc, und ich ziehe auch nicht wahllos komponenten auf die IDE
sonst verstrickst du dich zu sehr in details (zb dein DBLabel) und verlierst den blick fürs wesentliche.

hast schon ein konzept, was das programm machen/können soll? - ausser den datensatz in einem label anzeigen? :mrgreen:
wie siehts mit dem menü aus? welche funktionalitäten bietest du dem benutzer? darf er die sprachen wählen, selbst vokabel
erfassen, editieren, oder stellst ihm die zur verfügung?

auf diese art solltest du beginnen, ein programm zu schreiben, sonst bist du schneller in teufels küche als dir lieb ist
und du kommst trotz vieler änderungen, anpassungen nie mehr zu der von dir angestrebten lösung.

so, genug meiner worte, jetzt bist du dran. dann schiess los! ;)

mfg, stefan

PhöniX 25. Feb 2004 16:43

Re: Programm bleibt an letzer DB-Datei hängen..
 
:duck: :duck: :duck: :duck: :duck:

Hmm... Ich glaub das hat mich überzeugt den Vokabeltrainer nochmal komplett neu zu programmieren..
Aber zwei Fragen von Anfang an:

1. Der User soll Vokabeln SELBST editieren und hinzufügen. Aber wie sollte man das am besten verwalten? Nimmt man da ein DBGrid oder was anderes?

2. Ich hab irgendwo sch0n nenThread zu Select...From...Where gemacht. Ich will das jetzt auch so machen, aber ich bin etwas schwer von "kapisch" und versteh leider garnicht was man mit welcher komponente wo und wie und warum macht. Kann mir das netterweise auch noch jemand erklären?

:roteyes:

PhöniX 26. Feb 2004 15:31

Re: Programm bleibt an letzer DB-Datei hängen..
 
@ Admins
soll ich nen neuen thread für die 2 fragen da oben aufmachen??

sakura 26. Feb 2004 15:50

Re: Programm bleibt an letzer DB-Datei hängen..
 
Zitat:

Zitat von PhöniX
soll ich nen neuen thread für die 2 fragen da oben aufmachen??

Kann nie schaden - also los ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:16 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