Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#8

Re: kann Daten nicht an Rect übergeben

  Alt 14. Okt 2008, 00:43
Zitat von Roachford:
Delphi-Quellcode:
    SetLength(Ar, integer(bm.bmBits));
    Ar := @bm.bmBits;
Wozu reservierst du Speicher bei dem Array, wenn du es dann einfach überschreibst bzw. die Adresse woanders hinzeigen lässt? Was soll das mit dem "Array of TRGBQuad" überhaupt?

bmBits gibt dir den Zeiger auf einen TRGBQuad zurück, sprich: bmBits ist eigentlich ein PRGBQuad. Alle nachfolgenden Pixel findest du dann nach dem diesem Pixel. Dazu (wurde schon beim PRect gesagt) einfach Inc() machen.

Also:
Delphi-Quellcode:
var
  lPixel: PRGBQuad;
begin
  lPixel := bm.bmBits;

  lPixel^ => 1. Pixel
  Inc(lPixel);
  lPixel^ => 2. Pixel
  etc
In PB dimensioniere ich mir ein Array das auf die Adresse bm.bmBits zeigt
REDIM Ar(0) AS LONG AT bm.bmBits
Da ist nichts mit Quads

Mein problem ist halt eine lösung für mich zu finden die Daten nach Delphi rüber zu bringen
will aber auch nicht meine Progr.. die anderen vielleicht noch von nutzen sein können
in die Tonne werfen nur weil ich jetzt nix mehr in basic mache.

Jo in Delphi ist der ersatz für 1 = 1 + 1 inc(1) hab ich schon verstanden.
Was ich auf jedenfall weis ist das mein PB Schnipsel funktioniert.

Danke für die Hilfe.

PS: Häng mal mein Org. mit an
Delphi-Quellcode:
SUB CreateFormRegion(BYVAL TransColor AS LONG)

//schnipp
END SUB
  Mit Zitat antworten Zitat