Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Di 23. Okt 2007, 17:37
Hallo,
heute habe ich folgendes Versucht:
Code: Alles auswählen
{ TPlutoTabllenItem }
TPlutoTabllenItem = class
public
data:TStrings;
bmp:TBitMap;
procedure Draw;
constructor create;
end;
{ TPlutoTB }
TPlutoTB = class
private
protected
public
Buffer:TBitMap;
OutPut:Tcanvas;
cellen:array of array of TPlutoTabllenItem;
procedure SetSize(const aW,aH:Integer);
constructor Create(const aw,ah:Integer);
destructor Destroy;
procedure setCellenSize(const aw,ah:Integer);
published
end;
Und Immer wenn ich auf cellen[x,y].text zugreifen möchte wird das nicht in den Code-Tools angezeigt(strg+Leertaste Funktion).
Alles wird Kompliert, wenn ich es da hin schreibe
MFG
Michael Springwald
Christian
Beiträge: 6079 Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:
Beitrag
von Christian » Di 23. Okt 2007, 21:15
Die codetools kommen sicher mit array of array of nicht klar.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Mi 24. Okt 2007, 13:40
Warum ist das Sicher ?
mit einem einfachen Array kommen sie klar. Ich dachte es könnte an der classe liegen....
getestet habe ich das noch nicht....
Es ist also ein allgemeiner bekannter BUG ?
MFG
Michael Springwald
Christian
Beiträge: 6079 Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:
Beitrag
von Christian » Mi 24. Okt 2007, 14:08
Nö nur ne Vermutung.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Mi 24. Okt 2007, 14:30
ach so, und warum eine Vermutung ? Die kommen doch sonst auch mit fast allen Strukturen klar.
MFG
Michael Springwald
Christian
Beiträge: 6079 Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:
Beitrag
von Christian » Mi 24. Okt 2007, 16:17
Weil das das ungewöhnlichste Konstrukt in deinem Code ist.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Mi 24. Okt 2007, 16:28
Warum ? wie definierst du denn ein 2D Array ? evlt. wegen der klasse ? das war für mich einfacher als ein record, wegen der proceduren die in der klasse definiert sind.
MFG
Michael Springwald
monta
Lazarusforum e. V.
Beiträge: 2809 Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:
Beitrag
von monta » Mi 24. Okt 2007, 23:10
hast du mal probiert, ein Array in nen Typ auszulagern, und dann Array of Typ...geht das?
Johannes
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Do 25. Okt 2007, 19:21
Das werde ich heute probieren, ob das besser geht, ich glaube du meinst sowas hier:
// Ale Typ
T2DArray = array of array of ....
// Als Variable
D2Array:T2Darray...
MFG
Michael Springwald
monta
Lazarusforum e. V.
Beiträge: 2809 Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:
Beitrag
von monta » Do 25. Okt 2007, 22:27
Kannst du probieren, genau genohmen, meinte ich aber soetwas:
//Typ
TErstesArray = Array of ...
//Varibale
Variable: Array of TErstesArray
Aber ich hab keine Ahnung ob das geht und es nicht getestet.
Johannes
schnullerbacke
Beiträge: 1187 Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg
Beitrag
von schnullerbacke » Do 25. Okt 2007, 23:38
Logisch, dass das nicht angezeigt wird.
Dafür muss man ein Klasse erzeugen, die die Anzeige übernimmt. So kann das nicht gehen.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.
(Ringelnatz)
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Fr 26. Okt 2007, 14:35
Das ist doch eine Klasse. und bei montas weg währe das aber kein 2D array dann währe das sowas:
Array[Index].Array[Index]
Praktisch so was:
Items[0].Items[0] und genau sowas wollte ich nicht.
unter Delphi ging das so...
Was meinst du mit einer Klasse erzeugen ? das ist doch eine Klasse.....
kannst du mal ein kleines Beispiel schreiben dazu ?
MFG
Michael Springwald
schnullerbacke
Beiträge: 1187 Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg
Beitrag
von schnullerbacke » Sa 27. Okt 2007, 11:39
Guck einfach mal in die Quellen von Objekten die eindimensionale Arrays verwenden und diese auch ausgeben können. Da muss eine Methode für die Ausgabe der einzelnen Items eingebaut werden, die dann eben mehrer Dimensionen verwalten kann. Andere Möglichkeit wäre ein Property-Editor für solche Arrays.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.
(Ringelnatz)
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » Sa 27. Okt 2007, 17:28
Naja, mal sehen.
Ich meine Delphi kam damit klar und ich hoffe das es Lazarus auch eines Tages tuen wird.
Ist dieser bug* denn schon in der liste ? wenn nicht, könnte ihn jemand für mich Fachgericht eintragen ? da ich kaum glaube das bei den Lazarus Entwickler auch Deutsche bei sind, die den BUG beheben könnten.
* Ich nenne ihn erstmal so.....
kommt der BUG eigentlich auch in neueren Versionen von den FCL vor ?
oder liegt es ehrer an der Lazarus-IDE Version... 0.9.23.
PS. Ich muss es sowieso für mein Vorhaben ändern, was ich aber erst gestern gemerkt habe.
zuerst dachte ich ein 2D Array würde die arbeit erleichtern, was er auch getan hat.
Aber als ich dann das Eigentliche Projekt die Funktion einbauen wollte, habe ich gemerkt das ein 2D Array doch eine schlechte wahl gewesen ist. Aus verschiedenen Gründen....
MFG
Michael Springwald
pluto
Lazarusforum e. V.
Beiträge: 7192 Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)
Beitrag
von pluto » So 28. Okt 2007, 22:21
Heute habe ich gemerkt das er mit solchen 2D Array umgehen kann
Wenn man sie so Definiert ist alles inordnung, dann gehen die Code-Tools. aber wenn man sie Dynamisch erstellt geht es so leider nicht mehr.
MFG
Michael Springwald