![]() |
Zugriff auf Prozedur anderer Unit
Moin!
Den ZUgrifdf aus meiner 1.Unit, skat1, auf eine procedure der 2.unit, xmod, bekome ich nicht hin. Woran kann das liegen? Danke im Voraus, Wieland
Delphi-Quellcode:
unit skat1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ScktComp, StdCtrls, Grids, ExtCtrls, ImgList, ActnList, ComCtrls, jpeg, Buttons, xmod; type TForm1 = class(TForm) StringGrid1: TStringGrid; btnormals: TButton; btnachkrbub: TButton; btgeben: TButton; btende: TButton; btsort2: TButton; btsort3: TButton; btmischen: TButton; lsort2: TLabel; lsort3: TLabel; lsort1: TLabel; Label1: TLabel; btmemory: TButton; btrestore: TButton; btsort4: TButton; lsort4: TLabel; lbox: TListBox; ledi1: TLabeledEdit; btneumax: TBitBtn; lmax: TLabel; Image1: TImage; trbr: TTrackBar; lmodi: TLabel; Label2: TLabel; procedure FormCreate(Sender: TObject); procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); procedure btnormalsClick(Sender: TObject); procedure btnachkrbubClick(Sender: TObject); procedure btendeClick(Sender: TObject); procedure btgebenClick(Sender: TObject); procedure btsort2Click(Sender: TObject); procedure btsort3Click(Sender: TObject); procedure btmischenClick(Sender: TObject); procedure btmemoryClick(Sender: TObject); procedure btrestoreClick(Sender: TObject); procedure btsort4Click(Sender: TObject); procedure btneumaxClick(Sender: TObject); procedure trbrChange(Sender: TObject); private procedure zeitmessung(w,s:integer); procedure wimageload; procedure wsortiere1vert(s,w:integer); procedure wsortiere2einf; procedure wsortiere3ausw; procedure wsortiere4adrian; procedure wmischen; procedure wgeben; procedure change; { Private declarations } public { Public declarations } end; var Form1: TForm1; karten:array[1..33] of TBitmap; kartenfeld,memory1:array[1..32] of Integer; nummern:array[1..33]of Integer; nix,von,bis,max,ws:integer; c,n1,n2,q:int64; implementation {$R *.dfm} . . . procedure TForm1.change; var i:integer; begin . . . // xmod.TForm2. HIER IST MEIN PROBLEM end; end; end. Unit 2 (xmod): uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ScktComp, StdCtrls, Grids, ExtCtrls, ImgList, ActnList, ComCtrls, jpeg, Buttons; type TForm2 = class(TForm) procedure wxgeben; end; var zahlenfeld, memory2: array of Integer; implementation uses skat1; procedure tform2.wxgeben; var i:Integer; begin for i:=1 to 30 do form1.lbox.Items.Add(IntToStr(i)); end; end. |
Re: Zugriff auf Prozedur anderer Unit
Der Aufruf muss in der Form:
Delphi-Quellcode:
erfolgen.
Form2.wxgeben;
Grüsse ...Doc |
Re: Zugriff auf Prozedur anderer Unit
Zeig mal dei 2. Unit.
|
Re: Zugriff auf Prozedur anderer Unit
Die steht doch oben mit drin :wink:
|
Re: Zugriff auf Prozedur anderer Unit
Zitat:
|
Re: Zugriff auf Prozedur anderer Unit
Liste der Anhänge anzeigen (Anzahl: 1)
Der Aufruf "Form2.wxgeben;" funktioniert leider nicht.
Ich habe das Programm mal angehängt. |
Re: Zugriff auf Prozedur anderer Unit
Das Problem ist, dass es sich gar nicht um ein "normales" Formular handelt, sondern um eine Unit, in der Du ein TForm2 typisierst, dieses allerdings nie erzeugst.
Benötigst Du ein zweites Formular oder nur eine weitere Unit (zur besseren Übersichtlichkeit)? Dann muss/sollte das ganze ein bißchen anders aussehen... Grüsse ...Doc |
Re: Zugriff auf Prozedur anderer Unit
nur ne neue unit
|
Re: Zugriff auf Prozedur anderer Unit
Dann probiers mal so:
Delphi-Quellcode:
Aufruf aus Form1 heraus durch
unit xmod;
interface uses Windows, SysUtils; procedure wxgeben; var zahlenfeld, memory2: array of Integer; implementation uses skat1; procedure wxgeben; var i: Integer; begin for i:=1 to 30 do form1.lbox.Items.Add(IntToStr(i)); end; end.
Delphi-Quellcode:
Edit: Natürlich die Unit in Form1 einbinden...
wxgeben; // oder auch: xmod.wxgeben; (beides möglich)
Grüsse ...Doc |
Re: Zugriff auf Prozedur anderer Unit
funzt, danke
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz