Hallo Gemeinde.
Ich habe folgenden Programmcode.
Delphi-Quellcode:
type
TMesswert = record
Bezeichnung : string[80]; // z.B. EMK A1-A2
Wert : string[80]; // z.B. 185.4
Einheit : string[80]; // z.B. V
Min_Wert : string[80]; // z.B. 180.0
Max_Wert : string[80]; // z.B. 190.0
end;
TMessreihe = record
Name : string[80]; // z.B. Messwerte oder VDE-Messwerte
Messwert : array[0..100] of TMesswert;
end;
procedure TForm2.Button3Click(Sender: TObject);
var
Messreihe : TMessreihe;
P : Pointer;
Temp : OleVariant;
X : Integer;
begin
for X := 0 to 50 do
begin
Messreihe.Messwert[X].Bezeichnung := SD_Grid.Cells[0,X + 1];
Messreihe.Messwert[X].Wert := SD_Grid.Cells[1,X + 1];
Messreihe.Messwert[X].Einheit := SD_Grid.Cells[2,X + 1];
Messreihe.Messwert[X].Min_Wert := SD_Grid.Cells[3,X + 1];
Messreihe.Messwert[X].Max_Wert := SD_Grid.Cells[4,X + 1];
end;
// in ein PSafeArray packen
Temp := VarArrayCreate([0, SizeOf(Messreihe) - 1], varByte);
P := VarArrayLock(Temp);
try
Move(Messreihe, P^, SizeOf(Messreihe));
finally
VarArrayUnlock(Temp);
end;
end;
Nun meine Fragen:
Packe ich das ganze richtig in ein PSafeArray ein?
Kann ich die Record-Strucktur auch so schreiben?
Delphi-Quellcode:
type
TMesswert = record
Bezeichnung : string; // z.B. EMK A1-A2
Wert : string; // z.B. 185.4
Einheit : string; // z.B. V
Min_Wert : string; // z.B. 180.0
Max_Wert : string; // z.B. 190.0
end;
TMessreihe = record
Name : string; // z.B. Messwerte oder VDE-Messwerte
Messwert : array[0..100] of TMesswert;
end;
Vorab schonmal Danke für eure Hilfe.