Zitat Zitat
Original geschrieben von Freezy
Code:
function ARGB(a,r,g,b: Byte): Integer;
var first: Pointer;
begin
  first := a^;
  Result := LongWord(first);
end;
Ich kenn mich mit pointern nicht so direkt aus... kann ich denn sichergehen r,g und b hinter a im Speicher sitzen?
Wenn du a, r, g und b in einen Array packst, sollten sie es. Ansonsten nicht.

Allerdings müßte man dann erst den Array füllen und dann die Funktion mit einem Pointer zum ersten Element als Parameter aufrufen - umständlich.