Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Corioliskraft (https://www.delphipraxis.net/31032-corioliskraft.html)

Alexander Roth 3. Okt 2004 07:14


Corioliskraft
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hab zu der Corioliskraft ein programm geschrieben, wie findet ihr es???

mirage228 3. Okt 2004 07:49

Re: Corioliskraft
 
Hi,

Dein Programm ist schon sehr interessant. :thumb:

Nur flackert der Bildschirm so sehr, wenn ich den Wert berechnen lasse und besonders, wenn ich den Wert "Live anzeigen" lasse, wie er gezeichnet wird ("Bildschrim anzeigen").

Ansonsten ganz schön geworden ;)

mfG
mirage228

Matze 3. Okt 2004 09:33

Re: Corioliskraft
 
Gefällt mir auch sehr gut, bis auf das Flackern, was Mirage angesprochen hat.

Nur die anordnung der Buttons sagt mir nicht so zu (Berechnen-Butten überdimensional groß).
Du solltest es entweder verhindern, dass man das Formular in der Größe verändern kann oder entsprechend die Platzierung der Komponenten anpassen.

Hat ne Weile gedauert, bis ich raus hatte, für was die Strichstärke ist. :roll:

jfheins 3. Okt 2004 10:11

Re: Corioliskraft
 
Zitat:

Zitat von Matze
Hat ne Weile gedauert, bis ich raus hatte, für was die Strichstärke ist. :roll:

Bei mir auch. Aber lass doch bitte nicht eingaben wie z.B. 99 zu, dann komt die Linie gar nicht mehr vom Fleck :roll:

Alexander Roth 3. Okt 2004 13:19

Re: Corioliskraft
 
Das flacker kann ich leider nicht ändern, aber das mit dem eingen repariere ich.
Bin gerade an ein paar extras für das programm dran.

Robert_G 3. Okt 2004 18:18

Re: Corioliskraft
 
Zitat:

Zitat von Alexander Roth
Das flacker kann ich leider nicht ändern, aber das mit dem eingen repariere ich.
Bin gerade an ein paar extras für das programm dran.

Dann besetze bitte die Felder mit Nachkommastelllen nicht in der Text-Eiggenschaft der Edits. Sondern schreibe einfach im OnCreate des Forms:
Delphi-Quellcode:
  SomeEdit.Text := FloatToStr(1.2222);
Da ich ein englisches Windows mit . als Dezimaltrenner habe (ich hasse ehrlich gesagt , als Dezimaltrenner ;) ), gibt's ständig einen Umwandlungsfehler, wenn ich diese Werte nicht vor ändere.

jfheins 3. Okt 2004 18:24

Re: Corioliskraft
 
Oder im Form1.OnCreate (oder so) ein
Delphi-Quellcode:
DecimalSeparator := ',';
Dann geht auch alles wunderbar. :twisted:
(Alternativ geht auch DecimalSeparator := '.')

Alexander Roth 4. Okt 2004 10:40

Re: Corioliskraft
 
Ich finde es schön mit dem Komma.
Hab jetzt eine Final Version geschrieben. Kann es aber noch nicht ins netz stellen.

alcaeus 4. Okt 2004 10:48

Re: Corioliskraft
 
Hi Alexander,

Zitat:

Zitat von Alexander Roth
Ich finde es schön mit dem Komma.

Dann musst du aber Julius' Tipp befolgen. Ich habe z.B. auch ein englisches System, und das Programm sollte ja verwendbar sein, ohne dass ich zuerst alle Fließkommawerte suche, die irgendwo in den Programmeinstellungen versteckt sind.
Dazu gibt es noch folgendes zu bemerken: verwendest du Roberts Tipp, so wird jeder mit einem deutschen System den schönen (:roll:) Beistrich sehen, alle mit einem englischen den Punkt. Es wird einfach der DecimalSeparator des Systems verwendet.

Greetz
alcaeus

Alexander Roth 4. Okt 2004 11:05

Re: Corioliskraft
 
Wen meinst du mit ?
Zitat:

Dann musst du aber Julius' Tipp befolgen
Irgendwie kapier ich eure vorgehensweise nicht.
Wieso
Delphi-Quellcode:
DecimalSeparator := ',';
?

alcaeus 4. Okt 2004 11:39

Re: Corioliskraft
 
Hi Alexander,

dann will ich das Problem mal erklären. Wie Robert dir schon gesagt hat, solltest du die Edits nicht im OI mit den Gleitkommawerten füllen. Der Unterschied ist leicht erklärt. Hast du ein deutsches Windows, so sieht eine gültige Gleitkommazahl so aus: 1,222. Bei einem englischen Windows ist es jedoch anders, und zwar 1.2222
Dies hängt vom DecimalSeparator ab, der normalerweise vom System übernommen wird.

Um zum Problem zurückzukommen, du gibst in ein Edit 1,222 ein, was auf einem deutschen Windows ohne Probleme funktioniert. Handelt es sich hingegen um ein englisches, so ist die Zahl 1,222 keine gültige Fließkommazahl, und zwar wegen dem Beistrich.

Befolgst du allerdings Roberts Tipp (Edit1.Text := FloatToStr(1.222)), so wird die Zahl erst zur Laufzeit in einen String umgewandelt, und dabei wird eben der DecimalSeparator des Systems verwendet, was eine gültige Zahl ergibt.
Willst du die Edits aber weiterhin im OI füllen, so musst du im OnCreate deines Forms
Delphi-Quellcode:
DecimalSeparator := ',';
(das meinte ich auch mit Julius' Tipp) schreiben, damit 1,222 von einem englischen System nicht als ungültige Zahl betrachtet wird.

Noch eine kleine Erklärung zum DecimalSeparator:
Meine Hilfe schreibt:
DecimalSeparator is the character used to separate the integer part from the fractional part of a number

Bei einem deutschen System ist der Wert der Variable ',', bei einem englischen hingegen '.'
Und genau das bringt diese Probleme hervor.

Ich empfehle aber trotzdem, die Edits erst zur Laufzeit zu füllen, weil eine andere Darstellung von Zahlen als der Standard einige Benutzer verwirren könnte.

Greetz
alcaeus

Alexander Roth 4. Okt 2004 14:24

Re: Corioliskraft
 
Liste der Anhänge anzeigen (Anzahl: 1)
Danke für deine Erklärung.
Hab deinen Rat schon ausgeführt.
Hab jetzt die Version 1.1 geschrieben.
Wie findet ihr die Extras???

Maa83 27. Okt 2004 13:04

Re: Corioliskraft
 
wenn ich auf Zufallskurve klicke (mit den Standardeinstellungen) und dann nochmals auf Zufallskurve klicke dann ist dein Programm weg bzw. geschlossen!

Alexander Roth 28. Okt 2004 08:46

Re: Corioliskraft
 
Liste der Anhänge anzeigen (Anzahl: 1)
Tritt bei mir nicht auf das Problem aber vielleicht ist es ja in der neuen Version behoben.

Alexander Roth 3. Mär 2005 13:41

Re: Corioliskraft
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hab jetzt nach vielen Zwischenversionen die V 3.5.0 rausgebracht.
Hab damit den 1. Preis Regionalebene Physik Jugend-Forscht gewonnen.
Und ich habe den 1. preis auf der Landesebene gewonnen und komme nun auf die Bundesebene.
Vielleicht bracuht ihr dazu wenn er den Fehler meldet eine DLL. Ladet sie dann bitte aus dem Web kostenlos down.

Alexander Roth 16. Apr 2005 15:34

Re: Corioliskraft
 
Hab jetzt eine eigene Homepage.
http://home.arcor.de/rothalexander/
Dort findet ihr die neusten Versionen des programms.

Waldteufel 16. Apr 2005 16:04

Re: Corioliskraft
 
Hi.

Ich habe einen Fehler entdeckt:

Wenn ich im Feld "Umlaufdauer" einen ungültigen Wert wie "abc" oder auch (leider) "0,01" bzw. "0.01" eintrage bekomme ich eine Fehlermeldung, dass "..." kein gültiger Float-Wert ist, kann aber die Berechnung, die nicht ausgeführt wird, nicht abbrechen und deshalb im Feld "Umlaufdauer" keinen neuen Wert eintragen.


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