Avatar billede lifeweb Nybegynder
29. september 2004 - 13:58 Der er 7 kommentarer og
1 løsning

Brug en procedure fra form1 i form2??

Hej..!

Jeg vil gerne bruge en procedure i form2, og havde forestillet mig at jeg kunne skrive form2.procedurensnavn(param), men dette er ikke tilfældet

Hvordan gør jeg det??
Avatar billede stone Forsker
29. september 2004 - 14:02 #1
du uses form 1
Avatar billede snowball Novice
29. september 2004 - 14:03 #2
Hvis proceduren ligger i din Public del i form1, og du i din Uses del af form2, har inkluderet form1, så burde du også kunne gøre som du beskriver.
Avatar billede lifeweb Nybegynder
29. september 2004 - 14:12 #3
snowball: hvordan sørger jeg for at den ligger i min Public del..??
Avatar billede snowball Novice
29. september 2004 - 14:22 #4
Se nedenstående eksempel:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    //Her erklærer du din procedure
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

end.
Avatar billede lifeweb Nybegynder
29. september 2004 - 14:34 #5
Jeg har skrevet dette:
  public
  procedure downloadkalender(id:integer;dato:string);
  end;

Så får jeg en fejl.
Er det bare mig der er noget galt med??
Avatar billede snowball Novice
29. september 2004 - 14:55 #6
Du kan få en fejl hvis du ikke angiver hvilket form din procedure tilhører.

En hurtig test:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    procedure VisMinBesked(pBesked: String);
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

Uses unit2;

procedure TForm1.VisMinBesked(pBesked: String);
begin
  Showmessage(pBesked);
end;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Form2.Show;
end;

end.



unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm2 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

Uses Unit1;

{$R *.DFM}

procedure TForm2.Button1Click(Sender: TObject);
begin
  Form1.VisMinBesked('Dette er en test');
end;

end.
Avatar billede lifeweb Nybegynder
30. september 2004 - 09:07 #7
efter lidt ændringer virker det nu...
smid et svar snowball
Avatar billede snowball Novice
30. september 2004 - 09:12 #8
:)
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