Einzelnen Beitrag anzeigen

Peter Müller

Registriert seit: 15. Mär 2006
Ort: Stuttgart
22 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

AW: Modales Fenster nach Minimieren in Taskleiste nicht mehr durch Klicken aktivierba

  Alt 22. Feb 2015, 23:48
Hallo zusammen,

hab inzwischen herausgefunden, wie es funktioniert. Falls es mal jemand brauchen sollte, hier die Lösung:

Form1 ist das Hauptformular, Form2 das modale Formular. Man nehme eine TApplicationEvents-Komponente und den nachfolgenden Kode unter ApplicationEvents1Activate.

Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Dialogs, Vcl.Forms, Vcl.StdCtrls, Vcl.AppEvnts;

type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenDialog1: TOpenDialog;
    ApplicationEvents1: TApplicationEvents;
    procedure Button1Click(Sender: TObject);
    procedure ApplicationEvents1Activate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Form2: TForm;

implementation

{$R *.dfm}

uses PassWord;

procedure TForm1.ApplicationEvents1Activate(Sender: TObject);
begin
  if (Form2 <> Nil) and (fsModal in Form2.FormState) and Form2.Showing then Form2.BringToFront;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Form2 := TPasswordDlg.Create(Self);
  Form2.Parent := Self;
  if Form2.ShowModal = mrOK then begin
// mache was...
  end;
end;

end.
Viele Grüße

Peter
"Der Erfolg besteht manchmal in der Kunst, das für sich zu behalten, was man nicht weiß." Sir Peter Ustinov
  Mit Zitat antworten Zitat