Ich möchte ein Programm schreiben, wo über Menüeinträge Forms aufgerufen werden.
Das Hauptprogramm sieht wie folgt aus:
Code: Alles auswählen
unit ernaehrung;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
StdCtrls, Menus, erfass;
type
{ Tfrmernaehrung }
Tfrmernaehrung = class(TForm)
btnClose: TButton;
MainMenu1: TMainMenu;
MenuItem1: TMenuItem;
mnuErfassen: TMenuItem;
mnuErfassen_Lebensmittel: TMenuItem;
mnuBeenden: TMenuItem;
procedure btnCloseClick(Sender: TObject);
procedure mnuBeendenClick(Sender: TObject);
procedure mnuErfassen_LebensmittelClick(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
frmernaehrung: Tfrmernaehrung;
implementation
{ Tfrmernaehrung }
procedure Tfrmernaehrung.btnCloseClick(Sender: TObject);
begin
frmernaehrung.Close;
end;
procedure Tfrmernaehrung.mnuBeendenClick(Sender: TObject);
begin
frmernaehrung.btnCloseClick(Sender);
end;
procedure Tfrmernaehrung.mnuErfassen_LebensmittelClick(Sender: TObject);
begin
lebensmittel();
end;
initialization
{$I ernaehrung.lrs}
end.
Code: Alles auswählen
unit erfass;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
StdCtrls;
type
{ TfrmErfassen_Lebensmittel }
TfrmErfassen_Lebensmittel = class(TForm)
btnclose: TButton;
procedure btncloseClick(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
procedure lebensmittel();
end;
var
frmErfassen_Lebensmittel: TfrmErfassen_Lebensmittel;
implementation
{ TfrmErfassen_Lebensmittel }
procedure TfrmErfassen_Lebensmittel.lebensmittel();
begin
frmErfassen_Lebensmittel.Show;
end;
procedure TfrmErfassen_Lebensmittel.btncloseClick(Sender: TObject);
begin
frmErfassen_Lebensmittel.Close;
end;
initialization
{$I erfass.lrs}
end.
Wenn ich das ganze ohne Form mache, also nur eine Unit, so klappt der Aufruf, Anzeige eines Sendmessage('lebensmittel')
Irgendwo habe ich einen Fehler gemacht, aber wo?
Kann mir jemand helfen?
Bis dann ...
MfG
Günter