Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Drucken - globale Variable


jUli@ - Mi 29.01.03 11:35
Titel: Drucken - globale Variable
Hallo,

ich habe ein Formular Drucken, ich will von einem anderen Formular(Verwaltung) auf eine Variable zu greifen.

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
var
  frmDrucken: TfrmDrucken;
  sGrid: TStringGrid;  // <--------

implementation

procedure PrintGrid(sTitle: string);
var
  X1, X2: Integer;
  Y1, Y2: Integer;

In der Verwaltung habe ich die Unit Drucken in der USES stehen! ich kann aber trotzdem nicht auf die Variable zugreifen! :cry:

wieso??? :?:

Danke
LG Julia

Moderiert von user profile iconTino: Code-Tags hinzugefügt.


Ice - Mi 29.01.03 11:57

Hallo Julia,

welches ist den deine Variable für die Form "Drucken"???

Es sollte so aussehen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
interface
var 
 Drucken : TClassDruckenForm;  //Namen der Klasse aus dem Drucken Formular

implement

 Drucken := TClassDruckenForm.Create(nil);
 Drucken.gesuchteVariable;

sollte funktionieren.....

mfg Ice

Moderiert von user profile iconTino: Code-Tags hinzugefügt.


jUli@ - Mi 29.01.03 12:11

hi Ice

hmmm.. also irgendwie bekomme ich das so nicht hin. habe deins jetzt eingetragen aber der findet "TClassDruckenForm" nicht !

LG Julia


Ice - Mi 29.01.03 12:44

Hi !

Kann er auch nicht weil da der Name der Klasse aus deiner DruckenForm reingehört...

Und der setzt sich so zusammen:

T und der Name von deinem Formular z.B:

Quelltext
1:
2:
type
  TMainDia = class(TForm)

MainDia => der name deines Formulars

jetzt mußt du den Namen der unit im Uses Abschnitt der Unit angeben in der du die Variable benutzen möchtest:

Quelltext
1:
2:
uses
  Windows, Messages,MainDiaUnit;

jetzt deklarierst du eine Variable vom Typ TMainDia in dieser Unit

Quelltext
1:
2:
var
 Dia : TMainDia;

nun musst die Variable , am besten in der OnCreate Methode, initialisieren:

Quelltext
1:
2:
3:
4:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Dia : TMainDia.Create(nil);
end;

und nun Kannst du die Variable benutzen und hast auf die Klasse TMainDia vollen zugriff, z.B. so:

Quelltext
1:
 Dia.Free;                    

nach dem Punkt steht deine globale Druckvariable.

Du musst natürlich deine Variablen, Klassen- und Unit Namen verwenden ansonsten funktioniert es nicht.

mfg Ice

Moderiert von user profile iconTino: Code-Tags hinzugefügt.