Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Überladene Version?!? (https://www.delphipraxis.net/1282-ueberladene-version.html)

Daniel B 9. Nov 2002 22:16


Überladene Version?!?
 
Hallöchen,

was mach ich den jetzt schon wieder falsch?
Code:
procedure TMultitraktionLoks.Button3Click(Sender: TObject);
begin
  ShowMessage(IntToStr(MC2004.MenueInit.MtrStamm[StrToInt(
    MainFormMC2004.ListViewKKMtr.Selected.SubItems[2])]));
end;
Zitat:

[Fehler] MtrLoks.pas(251): Es gibt keine überladene Version von 'IntToStr', die man mit diesen Argumenten aufrufen kann
Grüsse, Daniel :hi:

jbg 9. Nov 2002 22:34

Als was ist denn MC2004.MenueInit.MtrStamm[] deklariert?

Daniel B 9. Nov 2002 22:39

Code:
  TMtr = Record //Multitraktion Daten
    MtrID: Integer; //ID -> Nummerisch Max. 5-Stellig 0-99999
    MtrName: String[10]; //Name -> AlphaNummerisch Max. 10-stellig
    Aktiv: Byte; //Aktiv(Multitraktion Aktiv?); Kann nur 1=Ja oder 0=Nein sein
    Erste: Byte; //Erste(Lok in einer Multitraktion); Kann nur 1 oder 0 sein
                 //Kann auch nur EINER Lok in einer Multitraktion zugewiesen werden
    MtrLok: Array [0..MaxMtrLoks -1] of TMtrLok;
    MtrLoksAnzahl: Integer;
  end;
Code:
  TMenue = Record
    LokStamm: Array of TLok;
    LokAnzahl: Integer;
    FktStamm: Array of TFkt;
    FktAnzahl: Integer;
    WeiStamm: Array of TWei;
    WeiAnzahl: Integer;
    MtrStamm: Array of TMtr;
    MtrAnzahl: Integer;
    KWLok: TKWLok; //Schnellwahltasten für den Lok-Modus
    KWFkt: TKWFkt; //Schnellwahltasten für den Funktions-Modus
    KWWStr: TKWWStr; //Schnellwahltasten für die Weichenstrassen
    SXAL: Boolean; //SXDaten AutoLaden 1=Ja oder 0=Nein
    SXALZ: Integer; //SXDaten AutoLadenZeit
    UStart: String[4]; //Uhr StartZeit
    UFaktor: String[2]; //Uhr Faktor
    UAnzeige: Boolean; //Uhr Anzeige Ein oder Aus
    PCIBaud: String; //PCInterface Baudrate
    PCIFormat: Integer; //PCInterface Format
    Licht: Boolean; //Licht
    Beschl: Byte; //MasseFaktorBeschl
    Brems: Byte; //MasseFaktorBrems
    Regler: Byte; //ReglerModus
    Decoder: Byte; //StandardDecoder
  end;
Code:
  TMC2004 = Record
    MenueInit: TMenue;
//    MenueSave: TMenue; //Wird noch nicht benutzt
//    SXInit: TSXInit; //Wird noch nicht benutzt
  end;
Code:
var
  MainFormMC2004: TMainFormMC2004;
  mHandle: THandle;
  MC2004: TMC2004;

jbg 9. Nov 2002 22:50

Da haben wir ja das Problem. Du versuchst den Record TMtr der von MC2004.MenueInit.MtrStamm[] geliefert wird, als Integer zu interpretieren und diesen an IntToStr zu übergeben
Du hast hinter dem "]" die Feldbezeichnung vergessen.

z.B.
Code:
MC2004.MenueInit.MtrStamm[StrToInt(
    MainFormMC2004.ListViewKKMtr.Selected.SubItems[2])][b].MtrID[/b]));

Daniel B 9. Nov 2002 22:57

Ah, jetzt gehts, Danke Dir. :hello:

Grüsse, Daniel :hi:


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