Delphi-PRAXiS
Seite 4 von 7   « Erste     234 56     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi die aufzurufende funktion wurde vom linker entfernt (https://www.delphipraxis.net/192566-die-aufzurufende-funktion-wurde-vom-linker-entfernt.html)

EWeiss 1. Mai 2017 23:53

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von Olli73 (Beitrag 1369710)
6 ist auch zu wenig => n*2+1
Da du scheinbar mit 5 anfängst also 11.

Dann habe ich aber 11 Arrays wo von nur 5 verwendet werden.. Hmmm
-5 > 0 = 6 Einträge

gruss

Olli73 1. Mai 2017 23:53

AW: die aufzurufende funktion wurde vom linker entfernt
 
oder so:
Delphi-Quellcode:
constructor TNegativeArray.Create(aLenght: Integer);
var
  i: Integer;
begin

  MaxValue := IIF(aLenght > 6, aLenght, 0);

  SetLength(FData, aLenght*2+1);

  for I := 0 to (aLenght*2) do
    FData[i] := TSprite.Create;
end;

Olli73 1. Mai 2017 23:54

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von EWeiss (Beitrag 1369711)
Dann habe ich aber 11 Arrays wo von nur 5 verwendet werden.. Hmmm
-5 > 0 = 6 Einträge

Das Array läuft immer von -n bis +n, also von -5 bis +5

Olli73 1. Mai 2017 23:56

AW: die aufzurufende funktion wurde vom linker entfernt
 
Oder gehen deine negativen Zahlen immer nur bis -5 runter, d.h. -6, -7 etc. gibt es nie?

EWeiss 1. Mai 2017 23:59

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von Olli73 (Beitrag 1369713)
Zitat:

Zitat von EWeiss (Beitrag 1369711)
Dann habe ich aber 11 Arrays wo von nur 5 verwendet werden.. Hmmm
-5 > 0 = 6 Einträge

Das Array läuft immer von -n bis +n, also von -5 bis +5

Das geht nicht.. sorry.
Wenn ich auf UBOUND also High(gs) hin prüfe dann muss das Array genau stimmen.
Ich kann keine Eigenschaften an einem nicht verwendeten Array Eintrag vergeben.

Scheint doch irgendwie nicht richtig zu laufen.
Bedenke Theoretisch könnte ich zusätzliche 100 Icons zum Array addieren wenn sie auf dem Desktop liegen.

gruss

EWeiss 2. Mai 2017 00:01

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Oder gehen deine negativen Zahlen immer nur bis -5 runter, d.h. -6, -7 etc. gibt es nie?
Es gibt nur soviel Array Einträge von minus bis 0 wie Bitmaps zur Laufzeit zugewiesen werden.
Das sind bei dieser Anwendung ganze 6 Stück.

Also nein es geht niemals unter -5 und 0 ist der höchste Eintrag.. für die Bitmaps.
Dazu kommen dann natürlich im positiven Bereich die Icons.
Deshalb muss ich ja dann das Array Redimensionieren ohne das die Einträge -5 > 0 verloren gehen.

Verstehe das nicht das man in Delphi keine minus werte einem Array hinzufügen kann. :wall::kotz:

gruss

Olli73 2. Mai 2017 00:05

AW: die aufzurufende funktion wurde vom linker entfernt
 
Dann kommt natürlich sowas in Frage:

Delphi-Quellcode:
function TNegativeArray.getData(index: Integer): TSprite;
begin
  result := fData[index + 5]
end;

Olli73 2. Mai 2017 00:08

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von EWeiss (Beitrag 1369717)
Verstehe das nicht das man in Delphi keine minus werte einem Array hinzufügen kann. :wall::kotz:

Das gilt nur für dynamische Arrays.

EWeiss 2. Mai 2017 00:14

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von Olli73 (Beitrag 1369718)
Dann kommt natürlich sowas in Frage:

Delphi-Quellcode:
function TNegativeArray.getData(index: Integer): TSprite;
begin
  result := fData[index + 5]
end;

Danke für deine Mühe aber es funktioniert so nicht.
Die minus werte bis 0 ja aber der Rest beim neu Dimensionieren nicht.
Mir gehen die Daten von -5 > 0 verloren.

Na ja ein Versuch war es wert.
Eventuell muss ich dafür ein neues, eigenes Array definieren welches nur die Icons verwaltet.
Der sinn des ganzen ist das ich nur ein Array verwende mit dem ich alle Daten vergleichen und bearbeiten kann.
Also minus für die Bitmaps und Plus für den Rest.


gruss

Olli73 2. Mai 2017 00:18

AW: die aufzurufende funktion wurde vom linker entfernt
 
Zitat:

Zitat von EWeiss (Beitrag 1369721)
Danke für deine Mühe aber es funktioniert so nicht.
Die minus werte bis 0 ja aber der Rest beim neu Dimensionieren nicht.
Mir gehen die Daten von -5 > 0 verloren.

Theoretisch müsste es so funktionieren. Dann hast du irgendwo noch einen Fehler drin....


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:37 Uhr.
Seite 4 von 7   « Erste     234 56     Letzte »    

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