Einzelnen Beitrag anzeigen

Jeff93

Registriert seit: 25. Mär 2008
Ort: Luxemburg
58 Beiträge
 
Turbo Delphi für Win32
 
#1

Record an Funktion weitergeben

  Alt 4. Jun 2008, 19:03
Hallo,

wollte ein Programm zur Umrechnung von Geschwindigkeiten (z.Bsp: 36km/h = 10m/s) und um ein paar Daten zusammenzufassen habe ich einen Record benutzt. Nun zeigt mit Delphi einen Fehler an.
Delphi-Quellcode:
  TSpeed = record
    Edit : TEdit;
(*das Edit-Feld in dem der Wert steht (zb. 36)*)
    Value : Double;
(*der Wert im Edit-Feld in double*)
    Combobox : TCombobox;
(*Eine Combobox in der sich die Einheit befindet (zb.: 'km')*)
    ValueofCBItems : array of Integer;
(*Hier das zweite Item der Combox z.Bsp. hat den Wert 1000,
  da man 36 muss mit 1000 multipl. um auf Meter zu kommen*)

  end;
Hier wird InputRoute definiert

Delphi-Quellcode:
 InputRoute.Edit := Form1.ed_RouteInput;
 InputRoute.Combobox := Form1.cb_RouteUnitInput;
 Setlength(InputRoute.ValueofCBItems, 2);
 InputRoute.ValueofCBItems[0] := 1;
 InputRoute.ValueofCBItems[1] := 1000;

 InputRoute := Convert(InputRoute);

 InputRoute := CalculateValue(InputRoute);
Und hier die Funktion.

Delphi-Quellcode:
  function CalculateValue(Speed : TSpeed) : TSpeed;
  begin
    if Speed.Combobox.Items[Speed.Combobox.ItemIndex] = Speed.Combobox.Text then //hier wird der Fehler gemeldet
      Speed.Value := Speed.Value * Speed.ValueofCBItems[Speed.Combobox.ItemIndex]
      else
      Speed.Combobox.ItemIndex := 0;
    result := Speed;
  end;
Hoffe ihr könnt mir helfen, danke im Voraus.
  Mit Zitat antworten Zitat