Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   FreePascal (https://www.delphipraxis.net/74-freepascal/)
-   -   illegal expression bei Procedureaufruf (https://www.delphipraxis.net/172873-illegal-expression-bei-procedureaufruf.html)

haderlump 26. Jan 2013 18:34

illegal expression bei Procedureaufruf
 
Hallo zusammen

bei folgendem Codeteil bekomme ich die Meldung : Error: illegal expression.


Delphi-Quellcode:
 procedure THauptform.HauptbildClick(Sender: TObject);
var
   spalte, reihe: Longint;
   konto,suchbegriff : string;
   Cursorpos: TPoint;
   Hauptforml :longint;

begin
        Hauptforml := Hauptform.top;
        spalte := mouse.cursorPos.x;
        spalte := spalte - Hauptform.left;
        spalte := spalte - hauptbild.left-5;
        reihe := Mouse.Cursorpos.Y;
        reihe := reihe - Hauptform.top;
        reihe := reihe - hauptbild.top -60;
        spalte := spalte   div 9;
        reihe := reihe div 13;

      suchbegriff := bildsch[spalte,reihe].name;

      anfrage(suchbegriff);
      if (anfrageergebnis = 'nicht_gefunden'){and (funktionsnummer <> 0) }then
      begin
      //showmessage('Dieses Feld ist keinem Element zugeordnet');
      exit;
      end ;
      case funktionsnummer of
      1 :      {Ziel Zugstrasse}
      begin
                if akt_element^.zug_zielfaehig = true then
                begin
                     funktionsnummer := 0;
                     Statuszeile.SimpleText := '' ;
                     //alle_ziele_loeschen;
                     akt_element^.ziel_gesetzt := true;
 --------->         zugfahrstrasse;
                end
                else
                begin
                    Statuszeile.SimpleText := 'Dieses Element ist nicht als Ziel für Zugfahrten erlaubt (nur Signale)' ;
                    //showmessage('Dieses Element ist nicht als Ziel für Zugfahrten erlaubt (nur Signale)');
                    timer1.enabled := true;
                end
                end;
// Der Programmteil geht hier noch weiter
Die Procedure "zugfahrstrasse" (durch den langen Pfeil gekennzeichnet)ist in der Unit vorhanden, richtig deklariert, und erwartet auch keine Parameter.
Was kann an diesem Aufruf illegal sein?

Gruß Fritz

mkinzler 26. Jan 2013 18:39

AW: illegal expression bei Procedureaufruf
 
Bist du sicher, dass der Fehler am Aufruf liegt?

Bes´ser nicht auf True abfragen

Delphi-Quellcode:
if akt_element^.zug_zielfaehig then
reicht.

haderlump 26. Jan 2013 18:50

AW: illegal expression bei Procedureaufruf
 
Ich hab den Aufruf mal an eine ander Stelle gesetzt, also unabhängig von der "true-Abfrage" geht auch nicht.

Medium 26. Jan 2013 19:31

AW: illegal expression bei Procedureaufruf
 
Wie ist zugfahrstrasse deklariert?

haderlump 27. Jan 2013 03:50

AW: illegal expression bei Procedureaufruf
 
Ich habe nun die betroffenen Procededuren samt Declaration und Aufruf etwas umbenannt, und schon geht es.
Weiß der Geier warum ?!
Ich hatte ja keine exotischen Bezeichungen verwendet, nur normale Buchstaben!!

Aber Danke für eure Bemühungen

Gruß Fritz

Medium 27. Jan 2013 04:25

AW: illegal expression bei Procedureaufruf
 
Jo, ohne weitere Infos lässt sich dieses Mysterium wohl auch nicht abschließend klären. Eigentlich schade.

mkinzler 27. Jan 2013 06:58

AW: illegal expression bei Procedureaufruf
 
Vielleicht eine Variable, Typ, Unit mit selben Namen?

haderlump 29. Jan 2013 07:44

AW: illegal expression bei Procedureaufruf
 
MKinzler

Nach doppelten Bezeichnungen habe ich schon gefahndet, aber da hätte er auch eine sndere Fehlermeldung gebracht.

Medium

Ja das Leben ist voller Geheimnisse.

Nochmals Danke

Praisepatty 5. Feb 2014 10:14

AW: illegal expression bei Procedureaufruf
 
hallo ich habe ein Problem ich will zwei Variablen telien, aber es kommt immer illegal expresion, was kann ich dagegen machen?

danke schon mal

Medium 5. Feb 2014 11:47

AW: illegal expression bei Procedureaufruf
 
1) Willkommen in der DP!
2) Deine Frage hat glaube ich mit dem Thema dieses Threads wenig/nur bzgl. der Fehlermeldung zu tun. Es wäre besser, wenn du einen neuen eröffnen würdest.
3) Unter "Variablen teilen" kann sich hier glaube ich keiner etwas vorstellen. Zeige uns am besten deinen Code, und beschreibe möglichst genau was du für ein Verhalten haben willst, und was statt dessen passiert. Auch bitte Fehlermeldungen immer zitieren.


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