Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem bei Alarm abfrage (https://www.delphipraxis.net/135198-problem-bei-alarm-abfrage.html)

robinWie 6. Jun 2009 12:22


Problem bei Alarm abfrage
 
Hi, ich wollte eine Alarmfunktion in ein Programm einbauen. Aber ich bekomme immer den Fehler
Zitat:

[Fehler] DeepthUnit.pas(100): E2015 Operator ist auf diesen Operandentyp nicht anwendbar
Hier ist die Zeile wo der Fehler auftritt
Delphi-Quellcode:
DBT_Min_A := (MainForm.ENV_DBT <> negInfinity) and DBT_Alert.Checked and EnDBT_Min.Checked and (MainForm.ENV_DBT < DBT_Min);
Die Variablen:
DBT_Min_A ist ein Boolean
Mainform.ENV_DBT ist die Variable die mit den mindeststand verglichen werden soll (Typ Extended)
DBT_Min ist der Mindeststand (Typ Extended)
DBT_Alert, und EnDBT_Min sind vom Typ TCheckbox die zum aktivieren des Alarms dienen

Ich bin schon die ganze Zeit am überlegen wo der Fehler ist aber ich kommt nicht weiter :wall:

mfg
Robin

mkinzler 6. Jun 2009 12:26

Re: Problem bei Alarm abfrage
 
Was für einen Typ hat negInfinity?
Versuche mal zu isolieren in welchem Teilterm der Fehler auftritt

robinWie 6. Jun 2009 12:29

Re: Problem bei Alarm abfrage
 
Zitat:

Zitat von mkinzler
Was für einen Typ hat negInfinity?

negInfinity ist aus der Unit Math und stellt den Wert -Unendlich dar ;)

Ich habs mal weiter eingegrenzt auf diesen Teil:
Delphi-Quellcode:
and (MainForm.ENV_DBT < DBT_Min);

hoika 6. Jun 2009 12:46

Re: Problem bei Alarm abfrage
 
Hallo,

geht denn das ?

Delphi-Quellcode:
if (MainForm.ENV_DBT < DBT_Min) then
begin
end;
Wenn ja, machst du etwas anderes falsch.

Reduzier mal deinen Code auf das Minimum
und poste ihn hier.


Heiko

robinWie 6. Jun 2009 14:17

Re: Problem bei Alarm abfrage
 
ich hab mein Fehler gefunden

Delphi-Quellcode:
with DeepthAlertDlg do
    begin
      DBT_Min_A := (MainForm.ENV_DBT <> negInfinity) and DBT_Alert.Checked and EnDBT_Min.Checked and (MainForm.ENV_DBT < DeepthDlg.DBT_Min);
      [...]
Durch das with hat der ein Edit Feld, was auf DeepthAlertDlg, DBT_Min heißt abgefragt und nich die Variable DBT_Min :oops:

Thx für die schnelle hilfe :cheers:

mkinzler 6. Jun 2009 14:19

Re: Problem bei Alarm abfrage
 
Deshalb vermeide ich die Verwendung von with

hoika 6. Jun 2009 18:52

Re: Problem bei Alarm abfrage
 
Hallo,

wenn man anständig mit Prefixen arbeitet,
passiert auch beim with nix.

Edit_Name
CB_bChecked

usw.


Heiko

Namenloser 6. Jun 2009 20:32

Re: Problem bei Alarm abfrage
 
Auch wenn es jetzt nichts mit deinem Fehler zu tun hat:
Delphi-Quellcode:
  { The following constants should not be used for comparison, only
    assignments. For comparison please use the IsNan and IsInfinity functions
    provided below. }
  NaN        = 0.0 / 0.0;
  (*$EXTERNALSYM NaN*)
  (*$HPPEMIT 'static const Extended NaN = 0.0 / 0.0;'*)
  Infinity   = 1.0 / 0.0;
  (*$EXTERNALSYM Infinity*)
  (*$HPPEMIT 'static const Extended Infinity = 1.0 / 0.0;'*)
  NegInfinity = -1.0 / 0.0;
  (*$EXTERNALSYM NegInfinity*)
  (*$HPPEMIT 'static const Extended NegInfinity = -1.0 / 0.0;'*)
(aus der math.pas)


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