Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi leer - leer - leer - wie lernt es mein Rechner? (https://www.delphipraxis.net/209449-leer-leer-leer-wie-lernt-es-mein-rechner.html)

KodeZwerg 9. Dez 2021 16:59

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Hallo, ich würde wahrscheinlich etwas anders an die Sache rangehen, ohne Code Beispiel, nur Theorie:

Variable aus Feld holen
Variable versuchen in einen Zeitwert zu wandeln
im "Except" Bereich mit der Variable etwas machen was passieren soll wenn Umwandlung fehl schlägt (leeres Feld, Quatsch im Feld etc...)

Nur so ein Gedanke um diesen Prüfungen aus dem weg zu gehen.
Wenn das durch ist würde ich auf Zeitwert 0:00:00.0000 prüfen, ich las da irgendwas bei dir ;-)

NicoleWagner 9. Dez 2021 18:55

AW: leer - leer - leer - wie lernt es mein Rechner?
 
danke für Deine Anwort. Weil Du die ganze Thread offenbar nicht gelesen hast, ist sie trotzdem nicht so prickelnd.

Bbommel 10. Dez 2021 10:06

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Dann nochmal zu deinem Ausgangsproblem, weil ja die Lösung mit ".IsEmpty" für dich nur begrenzt tauglich ist, wenn sie dein XE3 zum Absturz bringt. Offenbar war das mit den StringHelpern dann in der XE3 noch nicht ganz ausgereift. :-)

Dein Problem war ja das hier:

Delphi-Quellcode:
if (MaskEdit_ExitZeit.EditText<>'00:00') or (MaskEdit_ExitZeit.EditText<>'00:00:00') or (MaskEdit_ExitZeit.EditText<>'') then


Kann es sein, dass du hier einfach einen Logikfehler hast? Du prüfst, ob etwas "ungleich A oder ungleich B oder ungleich C" ist. Das ist aber immer "true". Denn wenn der Wert beispielsweise A ist, dann muss er in dem Moment ungleich B und auch C sein.

Konkret: wenn dein MaskEdiz_ExitZeit.EditText='' ist (also wirklich leer), dann wäre deine dritte Bedingung zwar faöse, aber die beiden anderen ja true, weil eben nicht "00:00" im EditText steht. Durch das "or" ist die Bedingung insgesamt true.

Fazit also: meinst du vielleicht einfach and statt or?

Sherlock 10. Dez 2021 10:54

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Dein Problem mit den "Compilermeldungen" lässt sich lösen, indem Du das einfach abschaltest (ist sowieso ab Codekomplexität knapp oberhalb von "Hello World" buggy):
Tools - Optionen - Editor Optionen - Code Insight -> Error Insight deaktivieren.

Macht die IDE auch insgesamt etwas schneller und stabiler.

Es ist übrigens nicht der Compiler,der da etwas falsch meldet, sondern ein Compiler, der nicht genau weiß, auf welchem Stand Delphi eigentlich ist.

Sherlock

TurboMagic 10. Dez 2021 17:57

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Naja, wäre sie auf einem Delphi 10.4+ wäre ErrorInsight auch so gut wie fehlerfrei. Dort wird nämlich per LSP der richtige C
ompiler dafür benutzt und das funktioniert zumindest für ErrorInsight jetzt echt gut. Spätestens ab 11.0, da wurde noch ein
Bugbeseitigt der beim Wechsel des Editor Tabs das ErrorInsight nicht immer aktualisierte.

NicoleWagner 13. Dez 2021 19:38

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Danke Sherlock für den Vorschlag zu Error Insight.
Leider finde ich diese Option nicht.
Die Programmierhilfe Autovervollständigen benutze ich dabei so intensiv, dsss ich ohne sie nicht mehr arbeiten kann.
Die Abschalten käme für mich nicht in Frage.

So sieht das bei mir aus:
https://abload.de/img/delphoptionenlhjwf.png

haentschman 14. Dez 2021 08:33

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Moin...:P
Zitat:

So sieht das bei mir aus:
...warum hängst du Bilder nicht hier an? Wenn das "Portal" abgeschalten wird...sind auch die Threads nicht mehr aussagekräftig. :zwinker:

Fehlermarkierung -> Haken raus

NicoleWagner 14. Dez 2021 17:07

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Danke, das mit dem Haken probiere ich!

Die Bilder hänge ich nicht hier an, weil Hochladen bei mir nicht funktionierte.


Liebe Grüße,
Nicole

haentschman 15. Dez 2021 06:00

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

weil Hochladen bei mir nicht funktionierte.
...dann hast du was falsch gemacht. :P Jeder lädt hier am Tag einige Bilder hoch. Zugegeben einige Dateien sind "gesperrt" (exe z.B.) Probiers nochmal...:wink:

Rollo62 15. Dez 2021 06:46

AW: leer - leer - leer - wie lernt es mein Rechner?
 
Zitat:

Zitat von himitsu (Beitrag 1498785)
Delphi-Quellcode:
dat := StrToTimeDef(MaskEdit_ExitZeit.EditText, 0);
// oder, wenn es nur ums prüfen geht - wenn man sich selber das fehlende IsNullOrWhiteSpace (ohne Parameter) dachgerüstet hat
if not MaskEdit_ExitZeit.EditText.IsNullOrWhiteSpace and TryStrToTime(MaskEdit_ExitZeit.EditText.Trim, Dummy) then

Hallo himitsu,
was für einen Vorteil hätte ein IsNullOrWhiteSpace() vor einem TryStrToTime( Trim() ) ?
Ist das nicht doppelt gemoppelt, oder hat TryStrToTime irgendeinen Bug den ich nicht kenne ?
Mir reicht in der Regel Letzteres aus.

Ok, im Problemfall gibt es eventuell leichte Performance-Vorteile,
was aber doch bei User-Eingaben sowieso relativ unkritisch ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:45 Uhr.
Seite 2 von 3     12 3      

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