Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
"Stoxx"
Zitat:
|
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
Joar, das hab ich mich auch schon immer mal wieder gefragt ... also wozu man sowas eigentlich verwenden kann. :gruebel:
Außer daß man in die Corona "unendlich" reinzoomen kann und sich da ein Muster ewig in sich wiederholt und daß es sich schwer berechnen läßt ist doch für nix verwendbar, oder? OK, außer um Laufzeitoptimierungen auszuprobieren :mrgreen: |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
[quote="isilive"]
Zitat:
Die Parameter werden angezeigt und können zur Editiom mit anderen Ziffern überschrieben werden, demit der Inhalt des Feldes Konvertierbar bleibt fordert die Maske eine Ziffer an allen Positionen. Mit '1.0500 000000' würde das Program sich mit einer Fehlermeldung 'Konvertierungsfehler' beim StrToFloat() verabschieden. Was ist unter normaler Bedienbarkeit zu verstehen? Ich halte die Edition einer im Feld stehenden Zahl durch Überschreiben durchaus für normal, auch ohne Delete und Backspace. |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
"Daniel G"
Zitat:
Zitat:
|
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
"himitsu" fragt
Zitat:
Speziell mit realen Anwendungen in Biologie, Ökologie, Geologie befassen sich H.M. Hastings/G. Sugihara in Fraktale Ein Leitfaden für Anwender Spektrum Academischer Verlag 1996. |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
Zitat:
Ich klicke in eine Editierfeld und der gesamte Inhalt wird zum Überschreiben markiert. Ich klicke noch einmal, dann wird wieder deselektiert und ich befinde mich im Einfügemodus. Oder ich markiere jetzt gezielt ein oder mehrere Zeichen und kann wieder überschreiben. Oder ich verwende Pos1 oder Backspace oder Delete. Nachdem ich "früher" auch gerne zu kreativen Methoden der Bearbeitung und der GUI gegriffen habe, bin ich nun doch der Meinung das man sich (auch wenn man Microsoft nicht mag) an das allgemeine "Look and Feel" halten sollte. Das bedeutet allerdings nicht, dass man nicht für spezielle Aufgaben auch spezielle Eingabemethoden einsetzen darf. |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
Im Notfall kann man Backspace und Delete auch ganz einfach in Maskedits implementieren
und (führende/folgende) Leerstellen würde ich einfach als 0 behandeln, oder vor der Umwandlung wegschneiden (Trim). |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
Was die Eingabe betrifft: Es hat sich als Quasi-Standard etabliert die Eingabe ungültiger Zeichen in entsprechende Edits abzufangen. Ein Leerzeichendruck fällt bei Zahleneingaben ebenso darunter wie Buchstaben, Steuertasten hingegen nicht. Die Prüfung muss Eingaben die "im Werdegang" sind berücksichtigen, z.B. kann ein '-.', dass ja an sich ungültig ist durchaus noch ein '-9.5' werden.
Daher: Sollte es ein User dann dennoch schaffen einen nicht konvertierbaren Wert einzugeben, so sollte man dies abprüfen, und dem Benutzer eine aussagekräftige Fehelrmeldung in Form eines MessageDialogs präsentieren, der aussagt was wo falsch ist. Das wäre der übliche Weg. Vormaskierte Eingaben mit invarianter Stellenanzahl sind nicht mehr üblich, und muten jedem "normalen" Windows User sehr fremd an. In einigen wenigen sehr zpeziellen Fällen kann das natürlich vermutlich sinnvoll eingesetzt werden, wenn es den "Bedienflow" erhöht, jedoch habe ich gerade nicht einmal ein treffendes Beispiel parat. Im vorliegenden Fall empfinde ich es als eher hinderlich. Was die "Hilfe lesen" Sache angeht: Man muss davon ausgehen, dass rund 99% aller PC User eine Hilfe wenn überhaupt bei speziellen Problemen anschaut. Wenn ich schon zum Verständnis der reinen Bedienung mit den ansonsten duraus standardmäßig aussehenden Controls eine Hilfe konsultieren muss, dann liegt das Problem nicht bei mir als User. Dann ist die GUI nämlich nach ergonomischen Gesichtspunkten ein Fehlschlag. Nicht umsonst beschäftigen größere Unternehmen ganze Abteilungen damit die Bedienbarkeit zu verbessern, und bei diesem kleinen Programm wäre es doch ein Leichtes eine sehr intuitive Bedienung zu schaffen, die auf dem Standardverhalten der Standardcontrols basiert. |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
Zitat:
oder direkt bei der Eingabe prüfen, ob das eingegebene Zeichen zu einer gültigen Zahl führt
Delphi-Quellcode:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var DummyOut: Single; begin if not TryStrToFloat(Edit1.Text + Key, DummyOut) then begin Key := #0; end; end; |
Re: Laufzeitoptimierung, MandelbrodtJuliaZoom
direkt bei der Eingabe ist blöd
will ich "-1" eingeben, dann ist das "-" alleine keine gültige Zahl, also erst im OnExit des Edits oder vor Verwendung der Zahl |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03: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