AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi wie kann ich einem objekt ein z.b. ein label zuweisen
Thema durchsuchen
Ansicht
Themen-Optionen

wie kann ich einem objekt ein z.b. ein label zuweisen

Ein Thema von zopf · begonnen am 14. Okt 2003 · letzter Beitrag vom 15. Okt 2003
Antwort Antwort
zopf

Registriert seit: 20. Jun 2003
Ort: maintal
10 Beiträge
 
Delphi 5 Professional
 
#1

wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 14. Okt 2003, 19:43
wer kann mir auf die sprünge helfen?
ich möchte für ein programm objekte deklarieren, da ich mehrer gleiche instanzen davon benötige.
die einzelnen objekte sollen daten verarbeiten und dann an bestimmten stellen auf meiner form
ausgeben (TLabel).
wie kann ich jeder instanz ein bestimmtes TLabel zuweisen, welches ich bereits zur entwurfszeit auf
die form gelegt habe?
also nach dem motto:

Delphi-Quellcode:
  procedure form1.create;
  begin
     meinObjekt1.create;
     meinObjekt1.ini(label1);
     ....
  end;
das objekt soll bei ini(...) das Label1 als ausgabeort übergeben bekommen und weiss fortan,
wo es einen bestimmten string ausgibt (nämlich immer in Label1).

vielen dank im voraus, chris (zopf)!

[edit=Daniel B]Delphi-Tags eingefügt. Mfg, Daniel B[/edit]
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 14. Okt 2003, 19:50
Moin Chris,

wenn ich davon ausgehe, dass beim Erzeugen des Objektes schon klar ist, wohin es seine Daten ausgeben soll, kannst Du es ja schon im Konstruktor als Parameter übergeben, und dann in einen privaten Feld des Objektes speichern.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
OLLI_T

Registriert seit: 13. Okt 2003
Ort: Nähe Wetzlar / Hessen
143 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 14. Okt 2003, 20:19
HY Zopf!

Vielleicht kannst Du Dir Tag Properties Deiner Labels zunutze machen? Ich ziehe auf diese Weise Daten aus Stored Procedures auf Formulare. Wenn Du Deine Objekte in einem Array ablegst, kannst Du eventuell hiermit was anfangen:

Delphi-Quellcode:
  
Var i:Integer; Lbl:TLabel;
For i:=0 To ComponentCount-1 Do Begin
    If Components[i] is TLabel Then Begin
      Lbl:=TLabel(Components[i]);
      ObjectArray[Lbl.Tag].Label:=Lbl;
    End;
  End;
Viel Erfolg!

OLLI
No Pain No Gain!
  Mit Zitat antworten Zitat
zopf

Registriert seit: 20. Jun 2003
Ort: maintal
10 Beiträge
 
Delphi 5 Professional
 
#4

Re: wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 15. Okt 2003, 05:17
hi olly, hi christian,
vielen dank erstmal für eure antworten!
ja christian, bei programmstart ist klar, wohin die daten sollen.
will im constructor auch das entsprechende label übergeben, bekomme jedoch
immer eine fehlermeldung.
hier mein code, vielleicht könnt ihr mir sagen, was ich falsch gemacht habe:

Delphi-Quellcode:
//das steht in einer eigenen unit
   INTERFACE

   type TTest = class(TObject)
      private
         FAnzeige:TLabel;
      public
         constructor create(Alabel:TLabel);
         //...
         procedure zeig;
   end;

   IMPLEMTATION

      constructor TTest.create(ALabel:TLabel);
      begin
        inherited create;
        FAnzeige:=ALabel; //diese übergabe funzt nicht...warum?
      end;

      procedure TTest.zeig;
      begin
         FAnzeige.Caption:='bla...bla';
      end;
...........................................................
// im hauptprogramm dann...

IMPLEMENTATION
  USES ...; //die Unit mit der Klassendeklaration

  var
    myTest:TTest;

  procedure myForm.create;
  begin
    myTest.create(Label1); //label1 zur entwurfszeit auf die form gelegt
    // an der stelle fehlermeldung
    ...
  end;
[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künfig selber machen. Danke. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 15. Okt 2003, 10:41
Moin Chris,

der Fehler kommt daher, dass Du das Objekt falsch erzeugst.
Es muss heissen:

MyTest := TTest.Create(Label1); MyTest ist eine Variable vom Typ TTest, und mit TTest.Create(...) wird ein Objekt der Klasse TTest erzeugt, und der Zeiger auf dieses Objekt wird dann der Variablen übergeben.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
zopf

Registriert seit: 20. Jun 2003
Ort: maintal
10 Beiträge
 
Delphi 5 Professional
 
#6

Re: wie kann ich einem objekt ein z.b. ein label zuweisen

  Alt 15. Okt 2003, 16:55
hi christian,
natürlich, du hast recht, manchmal macht man so blöde fehler und ist blind wie ein maulwurf.
ich danke dir, für deine mühe. bis zum nächsten mal, herzlichst, chris! (zopf)

p.s. falls du mal auf meine hp gehen willst hier der link: www.chris-hertzsch.de
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz