![]() |
CalcEdit-Komponente
Liste der Anhänge anzeigen (Anzahl: 4)
Hi DP'ler,
Dies ist nun eine neue Version(4.2) meiner Komponente Calcedit. (Reiter Zusätzlich) Ich möcht diese nun unter Freeware veröffentlichen, nachdem ich nun noch einige Kleinigkeiten augebügelt habe. Was sollte diese Komponente können: - positive und negative Zahlen - Anzeige von beliebigen Kommastellen - Tausender- Trennzeichen - Ergebins als Text und als Value - Verhalten wie eine normale Edit- Komponente(eingeschränkt auf Zahlen) - in der Eingabezeile: Rechnen mit den Grundrechenarten wie 3 + 6 und 700 * -2 (div 0 ergibt 0) - Prozentrechnung nun auch so: 530*12% - Addieren und Subtrahieren wie ein Tippstreifen- Tischrechner (Bon-Tischrechner), - wobei auch Muliplikation und Divison möglich sind. 3+ 6+ 5 --- 14 mfg BrunoT Weiterverwenden erlaubt! |
Re: CalcEdit-Komponente
Ich würde den Expression Evaluator (also das Ding, das eigentlich rechnet) in eine extra Unit auslagern.
Vorteile * Du könntest dem Control aus einen anderen Expression Evaluator unterschieben und so z.B. auch andere mathematische Funktionen ermöglichen. * du kannst den Evaluator auch für andere Controls (z.B. TDBEdit) einsetzen * du kannst den Evaluator unabhängig von deinem Control testen. Dazu baust du dir ein kleines Testbett:
Delphi-Quellcode:
Nachteile
erg := Evaluate('(3+7)*10*20%');
if erg <> '20' then // Test: sollte 20 ergeben raise Exception.Create('Berechnung falsch !'); * keine, ausser etwas Arbeit :hi: |
Re: CalcEdit-Komponente
Hi shima,
danke für´s Anschaun. das mit dem Auslagern kann ich ja noch machen. Ist ein guter Gedanke. :-D Im Augenblick hatte ich weniger mit der Berechnung Probleme, sondern mit dem Verhalten der Komponente. (z.B. Fokusverlust, reagiern auf TAB und Enter) :wink: Bei Gelegenheit werde ich das in Angriff nehmen. Im Augenblick war das nur ein Abfallprodukt. :mrgreen: mfg BrunoT wegen : (3+7)*10*20% das sollte die Kompo gar nicht können, sondern nur mit 2 Termen rechnen. :cyclops: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 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