Einzelnen Beitrag anzeigen

oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#13

Re: Create überschreiben (newbefrage)

  Alt 19. Jun 2007, 11:29
Hi,

also, das mit dem überladenen Constructor müßte nun eigentlich klappen. Wenn nicht, muß ich es wohl mal selbst zum Test proggen.

Eine zweite Variante ist, deinem Formular eine neue Eigenschaft zu verpassen. diese nach dem Create setzen und dann das Formular anzeigen. Als bsp. mal der folgende code so eben weg geschrieben:
Delphi-Quellcode:
type
  TModeType = (mt_none,
                mt_guckst_du_da,
                mt_guckst_du_hier
                );

  TMyGuckstDuForm = class(TForm)
  private
    FModeType: TModeType;
    procedure SetModeType(const Value: TModeType);
    { private-Deklarationen }
  protected
    { protected-Deklarationen }
  public
    { public-Deklarationen }
    property ModeType : TModeType read FModeType write SetModeType;
  published
    { published-Deklarationen }
  end;
implementation

{ TMyGuckstDuForm }

{-----------------------------------------------------------------------------
  Procedure: SetModeType
  Author:    oki
  Date:      19-Jun-2007
  Arguments: const Value: TModeType
  Result:    None
  Des.:      hiert wird die Ansicht des fensters in Abhängigkeit von ModeType
            geändert.
-----------------------------------------------------------------------------}


procedure TMyGuckstDuForm.SetModeType(const Value: TModeType);
begin
  FModeType := Value;
  case FModeType of
    mt_none: ............;
    mt_guckst_du_da: ............;
    mt_guckst_du_hier: .............;
  end;
end;
Jetzt kannst du zur Laufzeit dein Fenster normal über den mitgelieferten Constructor creieren, setzt dein Property und zeigst das Fenster an:
Delphi-Quellcode:
var MyForm : TMyGuckstDuForm;
begin
  MyForm := TMyGuckstDuForm.create(self);
  MyForm.ModeType := mt_guckst_du_da;
  MyForm.Show;
end;
Gruß oki