Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Kann Unterform nicht schließen! (https://www.delphipraxis.net/180480-kann-unterform-nicht-schliessen.html)

iphi 22. Mai 2014 16:39

Kann Unterform nicht schließen!
 
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!???

iphi 22. Mai 2014 20:52

AW: Kann Unterform nicht schließen!
 
Problem gelöst:

Die mit apt-get installierte Lazarusversion 0.9.30 ist buggy.
Mit der Version 1.2.2 tritt der Fehler nicht mehr auf.

himitsu 23. Mai 2014 03:29

AW: Kann Unterform nicht schließen!
 
Und falls es nochmal auftritt, dann probierst du mal Show aus, anstatt Visible:=True, denn die Beiden haben eine unterschiedliche Funktionsweise. (Show macht noch mehr, als nur das "Anzeigen")

DP-Maintenance 23. Mai 2014 07:24

Dieses Thema wurde am "23. May 2014, 08:24 Uhr" von "MrSpock" aus dem Forum "FreePascal" in das Forum "Lazarus (IDE)" verschoben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz