AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Mehrere Edit Felder dynmaisch erstellen, mit Prozedur
Thema durchsuchen
Ansicht
Themen-Optionen

Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

Ein Thema von holle · begonnen am 15. Nov 2005 · letzter Beitrag vom 15. Nov 2005
Antwort Antwort
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#1

Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 18:31
ich möchte beim programmstart 26 editfelder erstellen und ihnen verschiedene eigenschaften zuordnen. soweit funktioniert das auch ganz gut. jetzt möchte ich aber zusätzlich noch das beim onexit ereignis die prozedur check aufgerufen wird, bei jedem edit feld. wie kann ich das realisieren???

hier mein quelltext:
Delphi-Quellcode:
procedure TfrmMain.FormCreate(Sender: TObject);
  var edit: TLabeledEdit;
      i: integer;
begin
  //label erstellen
  for i:= 0 to 25 do begin
    edit:=TLabeledEdit.Create(self);
    edit.EditLabel.Caption:=chr(65+i);
    edit.Name:=chr(65+i);
    edit.Text:='';
    edit.Width:=20;
    edit.Height:=20;
    edit.Left:=21*i+16;
    edit.Top:=128;
    edit.OnChange:=check; //und hier soll die prozedur check; aufgerufen werden
    edit.Parent:=frmMain;
  end;
end;
thanx holle
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 18:34
Hallo!

Meinst du OnExit oder OnChange? Im Text schreibst du OnExit und im Code OnChange, aber das ist ja egal, in diesem Fall.
Mache einfach eine Prozedur, check in der TfrmMain - Klasse mit den Argumenten Sender: TObject.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 19:12
mit klassen hab ich leider noch nicht gearbeitet, aber hab mir schon gedacht, dass das in die richtung geht. kannst du das mal näher umschreiben?

thanx holle.
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 19:53
Hallo,

hier mal dein Code mit Erweiterung um "check":

Delphi-Quellcode:
  private
    { Private-Deklarationen }
    procedure check(Sender: TObject);

{ ... }

procedure TfrmMain.check(Sender: TObject);
begin
  Showmessage('es wurde eine Änderung im Edit: ' +
              (Sender as TLabeledEdit).Name + ' durchgeführt!');
end;

procedure TfrmMain.FormCreate(Sender: TObject);
  var edit: TLabeledEdit;
      i: integer;
begin
  //label erstellen
  for i:= 0 to 25 do begin
    edit:=TLabeledEdit.Create(self);
    edit.EditLabel.Caption:=chr(65+i);
    edit.Name:=chr(65+i);
    edit.Text:='';
    edit.Width:=20;
    edit.Height:=20;
    edit.Left:=21*i+16;
    edit.Top:=128;
    edit.OnChange:=check; //und hier soll die prozedur check; aufgerufen werden
    edit.Parent:=frmMain;
  end;
end;
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 20:38
danke soweit erstmal verständlich. und wie rufe ich jetzt die prozedur check auf wenn ich ein edit feld änder?

mfg holle
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 20:42
das Event "OnChange" wird ausgelöst, wenn sich die Eingabe im Edit verändert.

Bei der Zeile: edit.OnChange:= check; gibst du an, dass bei einer Veränderung die Procedure "check" durchlaufen werden soll.

Wenn du meine Erweiterung getestet hättest, hättest du gemerkt, das beim Ändern der Eingabe eines Edits, die ShowMessage gekommen wäre.
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 20:48
ok tschuldigung
ich hab nur gedacht das die zeile falsch ist, da ich sie rein intuitiv geschrieben hab funktioniert super ganz groß danke...

mfg holle
Marcel
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 20:58
hab jetzt noch ein problem: wie kann ich die edit felder in einer group box erstellen? wenn ich sie so einfach erstelle, befinden sie sich direkt auf dem formular, also hinter der groupbox.

thanx holle
Marcel
  Mit Zitat antworten Zitat
Nightshade

Registriert seit: 7. Jan 2003
Ort: Menden
192 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 21:04
einfach ein
    edit.Parent:=Groupbox1;
Christian
Killing for peace is like fucking for virginity

Nightshade
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#10

Re: Mehrere Edit Felder dynmaisch erstellen, mit Prozedur

  Alt 15. Nov 2005, 21:06
einfach folgendes ändern:

Delphi-Quellcode:
edit:=TLabeledEdit.Create(GroupBox);
edit.parent := GroupBox;
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  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:28 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