Einzelnen Beitrag anzeigen

Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#3

Re: "Bitte warten Fenster" anzeigen - andere Einga

  Alt 17. Jan 2008, 15:10
Die Maus im Panel gefangen zu halten ist keine Lösung. Der Benutzer soll sein System verwenden können, nur eben kurzzeitig das Programm nicht.

Mit dem Panel habe ich es auch schon versucht. Ich will das ganze aber als allgemeinen Dialog realisieren, den ich an verschiedenen Programmstellen verwenden kann. Ich bin daran gescheitert, dass ich nicht weiß wie ich den Panel dann an die richtige Stelle zeichne. Ich habe es so versucht:

Delphi-Quellcode:
  TWaitDlg = class(TObject)
  protected
    FOwner : TComponent;
    Panel : TFlatPanel;
    Label1 : TLabel;
    Label2 : TLabel;
    Animation : TAnimate;
  public
    constructor Create(Owner: TComponent);

    procedure Show;
    procedure Hide;
  end;

implementation

{$R *.dfm}

uses
  Math;

constructor TWaitScreenDlg.Create(Owner: TComponent);
begin
  Panel := TPanel.Create(Owner);
  Panel.BringToFront;

  // ... Andere Teile des Panels erstellen
  Panel.Visible := false;
end;

procedur TWaitScreenDlg.Show;
begin
  Panel.visable := true;
end;

procedur TWaitScreenDlg.Hide;
begin
  Panel.visable := false;
end;

==============

var
  dlg: TWaitDlg;
begin
  dlg := TWaitDlg.Create(MainForm);
  // dlg := TWaitDlg.Create(EinPanel);

  dlg.Show;

  TuWas();

  dlg.Hide;
end;
Das Programm läuft zwar, aber der Panel wird nicht angezeigt... Eine Idee was ich falsch mache?

Besten Dank
Ares
  Mit Zitat antworten Zitat