Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi [Android] TList funktioniert nicht (https://www.delphipraxis.net/190067-%5Bandroid%5D-tlist-funktioniert-nicht.html)

BBoy 25. Aug 2016 16:17

[Android] TList funktioniert nicht
 
Ich versuche mich an diesem Tutorial:Working with TMapView on iOS and Android with RAD Studio XE8 http://community.embarcadero.com/blo...rad-studio-xe8

Ein Problem gibt es gleich am Anfang und zwar bei FMarkers : TList<TMapMarker>;:
Code:
unit Markers;
 
interface
 
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, System.Generics.Collections, FMX.Controls.Presentation,
FMX.StdCtrls, FMX.Maps, FMX.Layouts;
 
type
TForm2 = class(TForm)
GridPanelLayout1: TGridPanelLayout;
MapView1: TMapView;
ButtonAdd: TButton;
ButtonUndo: TButton;
ButtonClear: TButton;
ButtonToggle: TButton;
procedure ButtonAddClick(Sender: TObject);
procedure ButtonUndoClick(Sender: TObject);
procedure ButtonClearClick(Sender: TObject);
procedure ButtonToggleClick(Sender: TObject);
private
{ Private declarations }
FMarkers : TList<TMapMarker>; <<<<<<<<<<<<< !!!!!!!!!!! Problem !!!!!!!!!!!
FShowMarkers: Boolean;
procedure CenterMap;
public
{ Public declarations }
constructor Create(Owner: TComponent); override;
end;
 
var
Form2: TForm2;
 
implementation
Ich bekomme da einen Fehler "Undeklarierter Bezeichner 'Tlist<>'"
Warum?


Mein Ziel ist es, Marker auf der Karte zu erstellen auf die ich einzeln zugreifen kann um sie zu ändern oder zu löschen. Wenn jemand dazu eine andere Idee hat, immer her damit :)

haentschman 25. Aug 2016 16:45

AW: [Android] TList funktioniert nicht
 
Hallöle... :P

Du hast die Units in der uses vergessen. :P Hier würde dir ein Crashkurs sicherlich helfen. https://www.delphi-treff.de/tutorial...phi-crashkurs/

Tipp:
TList(Blubb) - Standard List
TObjectList(Blubb) - ObjectList welche sich um die Freigaben kümmert.

Stevie 25. Aug 2016 16:47

AW: [Android] TList funktioniert nicht
 
Zitat:

Zitat von haentschman (Beitrag 1345759)
Hallöle... :P

Du hast die Units in der uses vergessen. :P Hier würde dir ein Crashkurs sicherlich helfen.

Tipp:
TList(Blubb) - Standard List
TObjectList(Blubb) - ObjectList welche sich um die Freigaben kümmert.

Delphi-Quellcode:
TList<T>
ist in
Delphi-Quellcode:
System.Generics.Collections
und
Delphi-Quellcode:
TMapMarker
in
Delphi-Quellcode:
FMX.Maps
, beides im uses.

Wenn ich mir den Code in dem Artikel anschaue, fällt mir auf, dass dort mindestens falsche single Quotes auftauchen - eventuell hat sich da noch ein anderes ungültiges Zeichen eingeschlichen, was den Compiler aus dem Tritt bringt.

BBoy 25. Aug 2016 16:49

AW: [Android] TList funktioniert nicht
 
Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
Mich wundern auch die <> in der Zeile. Hatte ich bisher noch nie.

haentschman 25. Aug 2016 16:52

AW: [Android] TList funktioniert nicht
 
Zitat:

Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
...Delphi meint das anders. 8-) TList(Blubb) ist ungleich zu TList.

Stevie 25. Aug 2016 16:54

AW: [Android] TList funktioniert nicht
 
Zitat:

Zitat von haentschman (Beitrag 1345762)
Zitat:

Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
...Delphi meint das anders. 8-) TList(Blubb) ist ungleich zu TList.

Spitze Klammern, keine runden, mkay? ;)

haentschman 25. Aug 2016 17:02

AW: [Android] TList funktioniert nicht
 
Zitat:

Zitat von Stevie (Beitrag 1345763)
Zitat:

Zitat von haentschman (Beitrag 1345762)
Zitat:

Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
...Delphi meint das anders. 8-) TList(Blubb) ist ungleich zu TList.

Spitze Klammern, keine runden, mkay? ;)

:oops: Seit meiner Krankheit ist das mit der Rechtschreibung so ein Problem...:P Aber du hast Recht: TList[Blubb]

Aviator 25. Aug 2016 17:10

AW: [Android] TList funktioniert nicht
 
Zitat:

Zitat von haentschman (Beitrag 1345765)
Zitat:

Zitat von Stevie (Beitrag 1345763)
Zitat:

Zitat von haentschman (Beitrag 1345762)
Zitat:

Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
...Delphi meint das anders. 8-) TList(Blubb) ist ungleich zu TList.

Spitze Klammern, keine runden, mkay? ;)

:oops: Seit meiner Krankheit ist das mit der Rechtschreibung so ein Problem...:P Aber du hast Recht: TList[Blubb]

Immer noch falsch. :lol:

Delphi-Quellcode:
TList<TFoo>
mit spitzen Klammern (keine eckigen).

Zitat:

Zitat von BBoy (Beitrag 1345761)
Tlist ist doch bei system.classes dabei. Und visuell nutze ich das nicht. Daher sollte das schon stimmen.
Mich wundern auch die <> in der Zeile. Hatte ich bisher noch nie.

Die <> geben an, dass es sich hierbei um Generics handelt. Also eine Instanz der TList Klasse welche nur Objekte des übergebenen Typs (bzw. deren Nachkommen [?]) beinhaltet. Du musst dich also nicht mehr selbst um das rumgecaste kümmern sondern bekommst immer schon den richtigen Datentyp zurück.

haentschman 25. Aug 2016 17:14

AW: [Android] TList funktioniert nicht
 
:oops: Schlimmer als gedacht... Man möge mir verzeihen. Korrekt: TList<TFoo>

Mit der Codevervollständigung wäre das nicht passiert...:P

BBoy 25. Aug 2016 18:37

AW: [Android] TList funktioniert nicht
 
Zitat:

Zitat von Stevie (Beitrag 1345760)
Delphi-Quellcode:
TList<T>
ist in
Delphi-Quellcode:
System.Generics.Collections
und
Delphi-Quellcode:
TMapMarker
in
Delphi-Quellcode:
FMX.Maps
, beides im uses.

Wenn ich mir den Code in dem Artikel anschaue, fällt mir auf, dass dort mindestens falsche single Quotes auftauchen - eventuell hat sich da noch ein anderes ungültiges Zeichen eingeschlichen, was den Compiler aus dem Tritt bringt.

Aber diese sind nicht für diesen Fehler zuständig oder doch?
Woran liegt es denn nun das es nicht funktioniert mit TList<TMapMarker>; ?? Das ist eigentlich für xe8 geschrieben, kann es etwas damit zu tun haben?

Unten bei TForm2.Create
bringt er noch "Tlist ist veraltet" und "inkompatible Typen"

Gibt es eine andere Möglichkeit dies umzusetzen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:03 Uhr.
Seite 1 von 2  1 2      

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