Thema: Delphi Zwei Malebenen

Einzelnen Beitrag anzeigen

Jibiel

Registriert seit: 9. Jul 2006
15 Beiträge
 
#7

Re: Zwei Malebenen

  Alt 2. Nov 2006, 19:41
Direkt das nächste Problem, bei dem ich nicht weiter weiß :/
Die erste Unit besitzt eine Komponente vom Typ TImage. In der Unit2 möchte ich auf diese zugreifen und in ihr ein Rechteck zeichnen.


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, GR32_RangeBars, GR32_Image, Unit2, StdCtrls, ColorGrd, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
  end;

var
  Form1: TForm1;
  Haus1: THaus;
implementation

procedure TForm1.Button1Click(Sender: TObject);
begin
Haus1 := THaus.create(Form1, Image1);
end;

end.

Delphi-Quellcode:
unit Unit2;

interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;
  
type Thaus = class(Tobject)
  private
   zformular : Tform;
   zimghinten : TImage;
  public
   constructor create(formular : Tform; imghinten : TImage); virtual;
   procedure Zeichnen;
  end;

implementation

constructor THaus.create(formular : Tform; imghinten : TImage);
begin
  inherited create;
  zformular := formular;
  zimghinten := imghinten;
end;

procedure THaus.Zeichnen;
begin
  zformular.zimghinten.Canvas.Rectangle(5,5,20,20);
end;

In der zweiten Unit in der Prozedur Zeichnen; beschwert er sich, dass zimghinten ein undefinierter Bezeichner ist, aber zformular kennt er. Wie kann ich von Unit2 aus auf Komponenten von Unit1 zugreifen, wenn nicht so?
:>
  Mit Zitat antworten Zitat