Avatar billede graspman Nybegynder
06. maj 2003 - 08:38 Der er 12 kommentarer og
1 løsning

Arve egenskaber for forme

Er der nogen der kan fortælle mig hvorledes jeg arver egenskaber fra forme. Hvis jeg nu har en menu jeg vil til at have til at sidde på alle mine forme ?

Gerne lidt udførligt...
Hilsner... :)
Avatar billede borrisholt Novice
06. maj 2003 - 08:46 #1
sÅLEDES AT NÅR MAN oprette din THeste form så har den automatisk en pop up menu eller ligende på sig ?

Jens B
Avatar billede graspman Nybegynder
06. maj 2003 - 08:52 #2
Yep, Jeg vil gerne have en menu der er gennemgående for alle mine forme. (MainMenu)
Avatar billede borrisholt Novice
06. maj 2003 - 08:55 #3
Skal implm. Så ligge i basis formen ?
Avatar billede graspman Nybegynder
06. maj 2003 - 09:36 #4
Øhh, Ja. Kan man ikke bare oprette en form og bruge den som skabelon ?
Avatar billede borrisholt Novice
06. maj 2003 - 10:12 #5
Prøv det her :

unit Unit2;

interface
uses
  Forms, Menus, classes, Sysutils;

type
  THesteForm = class(TForm)
    HesteMenu: TMainMenu;
  private
  public
    constructor Create(AOwner: TComponent); override;
  end;

implementation

{ THesteFrom }

constructor THesteForm.Create(AOwner: TComponent);

  Procedure  AddMenuItem(AOwner : TMainMenu; const Caption: String);
  var
    aItem : TMenuItem;
  begin
    aItem := TMenuItem.Create(AOwner);
    aItem.Caption := Caption;
    AOwner.Items.Add(aItem);
  end;

  procedure AddSubMenu(AOwner : TMenuItem; Caption : String);
  var
    aItem : TMenuItem;
  begin
    aItem := TMenuItem.Create(AOwner);
    aItem.Caption := Caption;
    AOwner.Add(aItem);
  end;

begin
  inherited;
  HesteMenu := TMainMenu.Create(Self);


  AddMenuItem(HesteMenu, 'Menu_1');
  AddMenuItem(HesteMenu, 'Menu_2');
  AddMenuItem(HesteMenu, 'Menu_3');
  AddMenuItem(HesteMenu, 'Menu_4');

  AddSubMenu(HesteMenu.Items[0], '1');
  AddSubMenu(HesteMenu.Items[0], '2');
  AddSubMenu(HesteMenu.Items[0], '3');
  AddSubMenu(HesteMenu.Items[0], '4');

  AddSubMenu(HesteMenu.Items[1], '1');
  AddSubMenu(HesteMenu.Items[1], '2');
  AddSubMenu(HesteMenu.Items[1], '3');
  AddSubMenu(HesteMenu.Items[1], '4');

end;

end.
Avatar billede graspman Nybegynder
06. maj 2003 - 11:14 #6
Er der ikke en nemmere metode. Jeg har kun en Menu, som skal gå igen på alle mine forme ?

Hilsen Jesper
Avatar billede borrisholt Novice
06. maj 2003 - 11:20 #7
Jo jo .. Du laver din form alla den her.



Arver du fra THesteForm i stedet for Tform
Avatar billede borrisholt Novice
06. maj 2003 - 11:21 #8
Normalt står der ..

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

Det retter du til

type
  TForm1 = class(THesteForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;
Avatar billede graspman Nybegynder
06. maj 2003 - 11:47 #9
det virker ikke..... :(
Avatar billede martinlind Nybegynder
06. maj 2003 - 11:58 #10
Opret et project lav den form du vil arve fra, og når du laver nye forms vælger du new i menuen der vil så være en fane med dit project's navn f.eks. Project1, på den fane ligger alle forms i projectet så vælger du bare den du vil arve fra og så kører det

/Martin
Avatar billede borrisholt Novice
06. maj 2003 - 11:58 #11
Jo det gør så. Det er dig der ikke gør der rigtigt ! Du skal inkudere unit2 i din uses ...
Avatar billede borrisholt Novice
06. maj 2003 - 11:59 #12
Det er ikke i unit2 du skal rette, men unit1

Jens B
Avatar billede graspman Nybegynder
06. maj 2003 - 12:02 #13
Det virker det sidste - Mange Tak... :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester