Einzelnen Beitrag anzeigen

Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#8

Re: Problem mit Records in Class bei Abfrage der Class

  Alt 7. Sep 2008, 12:38
Zitat von DeddyH:
Auf den ersten Blick kann ich nichts Auffälliges entdecken, da steckt vielleicht der Fehler im Detail
Wie meinst du das?

Falls es was hilft - hier die Procedure wo es abgefragt wird:

Delphi-Quellcode:
function State_erzeugen(State_ID: String; Anzahl_Horz_Buttons, max_Horz_Buttons,
  Seite: Integer): TStateInfos;
var
  i : Integer;

begin
  //Rückgabewerte vordefinieren
  Result.Previous_State_ID := '';
  Result.Mask_ID := '';

  try
    for i := 0 to Pred(MaskForm.Liste_State.Count) do
      begin
        //ausgewähltes States in der Liste suchen
        If TStateClass(MaskForm.Liste_State.Items[i]).Name = State_ID then
          begin
            with TStateClass(MaskForm.Liste_State.Items[i]) do
              begin
// s_calc := Calc;

                //Horizontale Buttons erzeugen
                HButton_aufbauen(Horz_Buttons, Anzahl_Horz_Buttons,Seite, 0, Mask);

                //Vertikale Buttons erzeugen
                VButton_aufbauen(Vert_Buttons, Section);

                //Previous-Button disablen
                MaskForm.Button_Previous.Visible := false;

                If Pos(New_State, Previous) = 1 then
                  begin
                    //Previous-Button einblenden, wenn Previous-State angegeben ist
                    MaskForm.Button_Previous.Visible := Previous <> '';

                    //Privious-State zurückgeben (als Result)
                    Result.Previous_State_ID := Previous;
                  end;

                //Maske anzeigen (als Result)
                If Pos(New_Mask, Mask) = 1 then
                  Result.Mask_ID := Mask;
              end;
          end;
      end;
  finally
    //
  end;
end;
Die Definition von "HButton_aufbauen" und "VButton_aufbauen" schaut so aus:
Delphi-Quellcode:
  procedure HButton_aufbauen(HButtonListe: array of TStateHButton;
    Anzahl_Horz_Buttons, max_Horz_Buttons, Seite: Integer; Mask_ID: String);
  procedure VButton_aufbauen(VButtonListe: array of TStateVButton;
    aktive_Section: Integer);
[Edit]
Ich hab jetzt einen Fehler gefunden, bei Active muss es so heissen:
Active := StrToBoolDef(ListeButton.Values['Active'], false); anstatt
Active := StrToBoolDef(ListeButton.Values['Font'], false); Jetzt funktioniert das Active
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat