Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Zur Laufzeit erstellte Form nur einmal öffnen

  Alt 23. Aug 2003, 11:36
Hi!

Code:
procedure TForm1.BitBtn1Click(Sender: TObject);
var Fenster: TForm;
begin
  Fenster:=TForm.Create(self);
  Fenster.Caption:='Hallo';
  Fenster.Show;
end;
Jetzt ist es so, dass wenn ich auf den BitBtn klicke jedesmal ein neues Fenster geöffnet wird. Ich möchte es allerdings nur einmal öffnen, auch, wenn ich öffters auf den BitBtn klicke.

So geht's nicht:

Code:
var
  mHandle: THandle;
  DatName:String;

initialization

  DatName:=ExtractFileName(Fenster.Caption);
  DatName:=Copy(DatName,1,Length(datName)-4);
  mHandle := CreateMutex(Nil, True,PChar(DatName));
  if GetLastError = ERROR_ALREADY_EXISTS then
  begin
    ShowMessage('Programm bereits gestartet');
    Halt;
  end;
finalization
  if mHandle <> 0 then CloseHandle(mHandle);
Kann mir jemand helfen??

Gruß Matze
  Mit Zitat antworten Zitat