AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Formcreate für Frame

Ein Thema von P4CM4N · begonnen am 20. Jun 2007 · letzter Beitrag vom 25. Jul 2007
Antwort Antwort
LuckySpacy

Registriert seit: 2. Apr 2003
Ort: Fränkisch-Crumbach
50 Beiträge
 
Delphi 10.4 Sydney
 
#1

Re: Formcreate für Frame

  Alt 25. Jul 2007, 14:34
Hi,
ich würde das Problem so lösen:

Delphi-Quellcode:
type
  TFrame2 = class(TFrame)
  private
    FOnShow: TNotifyEvent;
    procedure CMShowingChanged(var Message: TMessage); message CM_SHOWINGCHANGED;
  public
  published
    property OnShow: TNotifyEvent read FOnShow write FOnShow;
  end;

implementation

{$R *.dfm}

{ TFrame2 }

procedure TFrame2.CMShowingChanged(var Message: TMessage);
begin
  inherited;
  if Showing then
    if Assigned(FOnShow) then
      FOnShow(Self);
end;
Somit dürfte man ein Frame um das Event OnShow erweitert haben.


Zweiter Teil (zusammenführung bitte durch den Verfasser der beiden Teile) (mit der Edit-Funktion)

Bin gerade dabei mich mit diesem Thema zu beschäftigen.
Wenn man darauf reagieren möchte, wann sich ein Frame Sichtbar oder Unsichtbar schaltet dann vielleicht so:

Delphi-Quellcode:
type
  TFrame2 = class(TFrame)
    Label1: TLabel;
    Edit1: TEdit;
  private
    FOnShow: TNotifyEvent;
    FOnVisible: TNotifyEvent;
    FOnVisibleChanged: TNotifyEvent;
    FOnHide: TNotifyEvent;
    procedure CMShowingChanged(var Message: TMessage); message CM_SHOWINGCHANGED;
    procedure CMVISIBLECHANGED(var Message: TMessage); message CM_VISIBLECHANGED;
  public
  published
    property OnShow: TNotifyEvent read FOnShow write FOnShow;
    property OnVisible: TNotifyEvent read FOnVisible write FOnVisible;
    property OnHide: TNotifyEvent read FOnHide write FOnHide;
    property OnVisibleChanged: TNotifyEvent Read FOnVisibleChanged write FOnVisibleChanged;
  end;

implementation

{$R *.dfm}

{ TFrame2 }

procedure TFrame2.CMShowingChanged(var Message: TMessage);
begin
  inherited;
  if Showing then
    if Assigned(FOnShow) then
      FOnShow(Self);
end;

procedure TFrame2.CMVISIBLECHANGED(var Message: TMessage);
begin
  inherited;
  if Assigned(FOnVisibleChanged) then
    FOnVisibleChanged(Self);
  if Visible then
  begin
    if Assigned(FOnVisible) then
      FOnVisible(Self);
  end
  else
  begin
    if Assigned(FOnHide) then
      FOnHide(Self);
  end;

end;
[edit=SirThornberry]Beide Ergüsse zusammengeführt - Mfg, SirThornberry[/edit]
Thomas Bachmann
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz