Hallo,
ich komme von Delphi/Windows und lerne gerade den Umgang mit Lazarus/Linux.
Dabei bin ich mit folgendem sehr einfachen Beispielcode in Lazarus auf ein Problem gestoßen:
Delphi-Quellcode:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,
StdCtrls;
type
{ TForm1 }
TForm1 =
class(TForm)
Button1: TButton;
MainMenu1: TMainMenu;
MenuItem1: TMenuItem;
procedure Button1Click(Sender: TObject);
procedure MenuItem1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Visible:=true;
end;
procedure TForm1.MenuItem1Click(Sender: TObject);
begin
Form2.Visible:=true;
end;
end.
Ich kann eine zweite (leere) Form2 entweder durch Click auf Button1 oder durch Click auf ein HauptmenuItem sichtbar machen. Soweit so gut. Nun das merkwürdige:
Nach Öffnen über Button1 kann ich die Form2 mit Click auf X wieder schließen, nach Öffnen über das Hauptmenü lässt sich Form2 NICHT mehr schließen.
Ist das ein Feature oder ein Bug?!?
Unter Delphi7 lässt sich mit dem gleichwertigen Code die Form2 IMMER schließen.
P.S.
Wenn ich vor dem Schließversuch auf die leere Form2 klicke, dann lässt sie sich schließen!???