Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi n-Dame: Einzelschrittmodus & Pausen (https://www.delphipraxis.net/61647-n-dame-einzelschrittmodus-pausen.html)

muetzentraeger 24. Jan 2006 13:43


n-Dame: Einzelschrittmodus & Pausen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich bin es mal wieder und das altbekannte Problem habe ich auch wieder mitgebracht :wink: .
Dies mal lässt es sich sogar zweiteilen :-D:
PROBELM 1:
Und zwar würde ich jetzt gern in mein Programm noch einabuen, dass die Kernstelle (also das Lösen meines n-Dame Problems mit Hilfe von Backtracking), sozusagen im Einzelschritt Modus laufen kann.
Ich meine damit, dass das Programm jede Dame erst dann setzt wenn man zum Beispiel einmal auf einen Button klickt. z.B. auf Nächste.
PROBLEM 2:
Nun noch eine "Pausenlängenveränderung" :).
Und zwar würde ich gerne die Pausenlänge auch während das Backtracking läuft ändern. Fals man mitbekommt, dass es einem zu lange dauert. Weil bis jetzt sind immer alle Button nicht "ansprechbar" bis es komplett durchgelaufen ist.

Also ich hoffe ihr könnt mir wieder helfen.

Der_Unwissende 24. Jan 2006 14:16

Re: n-Dame: Einzelschrittmodus & Pausen
 
Hi,
versteh mich jetzt nicht falsch, aber es sind interessante Probleme. Aber könntest du etwas genauer werden wo dein Problem liegt? Was hast du für Ansätze/Ideen, was schon versucht, wo scheitert es?
Nur Lösung anfragen ist doch irgendwie langweilig, du würdest wenig lernen und gegen die Forenregeln verstossen. Zudem könnte das auch noch einen schlechten Eindruck hinterlassen (siehe verschiedene Threads à la Delphipraxis-Hausaufgabenerledigungsmaschine)

Gruß Der Unwissende

muetzentraeger 24. Jan 2006 15:26

Re: n-Dame: Einzelschrittmodus & Pausen
 
Stimmt, das versteh ich, wenn ich mir das jetzt noch einmal durchlese wird es mir es bewusst. Aber das ich nicht selbst darüber nachdenke kann man nun wirklich nicht sagen. Ich hab jetzt schon mehrere erfolglose Versuche hinter mir. Die will ich lieber nicht alle schreiben, sonst lachen mich noch manche aus ;).

Aber die für mich am erfolgversprechensten waren:
PROBLEM 1:
-Ich wollte mit
Delphi-Quellcode:
exit;
arbeiten, also wenn ich auf einen Button klicke das er abbricht.
--> scheiterte daran, dass der Button nicht reagiert hat bis es (der komplette Lösungsalgorithmus) einmal vollständig durchgelaufen war.
--> aber selbst wenn es geklappt hätte, wüsste ich nicht wie das Programm wieder an genau der Stelle an der es "ausgesetzt" hat wieder einsetzen sollte.
-eine andere Idee war (aus alte Turbo-Pascal-Zeiten :))
Delphi-Quellcode:
repeat
until
keypress;
er sollte also an einer bestimmten Stelle warten bis ich etwas drücke.
-->das verlief im Sand weil ich diese Funktion nicht in Delphi gefunden hab :(, bzw. es war OnClick o.ä. aber das ist wieder Problem, dass ich nicht während des Ablaufes eingreifen kann
-->das wäre aber eigentlich genau was ich haben möchte, weil es dem entspricht was ich mir so Vorstelle ;)

PROBLEM 2:
-hier habe ich es mit
Delphi-Quellcode:
sleep({pause});
versucht
-->das klappt auch ohne größere Probleme, nur wie schon gesagt, wenn man dann feststellt, dass es einem zu lange dauert, kann man nichts mehr verändern, und muss abwarten bis er fertig ist

Tja ich hoffe das waren genug Ansätze die mir bei der Problemlösung nicht geholfen haben. Vielleicht helfen sie mir wenigstens meinen schlechten Ruf zu bereinigen ;)

Nicolai1234 24. Jan 2006 16:06

Re: n-Dame: Einzelschrittmodus & Pausen
 
Zitat:

Zitat von muetzentraeger
PROBLEM 2:
-hier habe ich es mit
Delphi-Quellcode:
sleep({pause});
versucht
-->das klappt auch ohne größere Probleme, nur wie schon gesagt, wenn man dann feststellt, dass es einem zu lange dauert, kann man nichts mehr verändern, und muss abwarten bis er fertig ist

Tja ich hoffe das waren genug Ansätze die mir bei der Problemlösung nicht geholfen haben. Vielleicht helfen sie mir wenigstens meinen schlechten Ruf zu bereinigen ;)

In diesem Fall würde ich einen Schieberegler einbauen, an dem man die sleep-Zeit einstellen kann. Das sollte dann nur regelmäßig überprüft werden. Und statt sleep, würde ich delaydelay nehmen, da das Programm dann nicht einfriert.

muetzentraeger 25. Jan 2006 18:19

Re: n-Dame: Einzelschrittmodus & Pausen
 
Einen riesen dank. Das mit delay funktioniert einfach super. Ich hab jetzt auch schon fast alle meiner anderen Probleme beiseitigt. Ich glaube ich habe einfach einen Denkanstoß in diese Richtung gebraucht. Um meine eigene Frage zu beantworten:
Ich hab Trick 17 genutzt, und zwar hab ich eine Schleife eingebaut in der Nichts getan wird außer:
Delphi-Quellcode:
repeat delay(1000); until CheckBox1.Checked=true;
Und da man bei delay auf das Programm zugreifen kann hab ich einen Button gemacht der einen Haken in die CheckBox setzt.
Danke Danke
Danke Danke
Danke Danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz