AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Eine Eigenschaft von mehreren Objekten ändern
Thema durchsuchen
Ansicht
Themen-Optionen

Eine Eigenschaft von mehreren Objekten ändern

Ein Thema von faux · begonnen am 25. Jul 2004 · letzter Beitrag vom 25. Jul 2004
Antwort Antwort
Benutzerbild von faux
faux

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

Eine Eigenschaft von mehreren Objekten ändern

  Alt 25. Jul 2004, 13:40
Hallo...

Ich habe schon öfter so ein "Problem" gehabt:

Wenn man mehrere eigenschaften eines Objektes ändern will macht man das mit with.

Z.B:
Delphi-Quellcode:
with Canvas do
begin
  Pen.Color := $00ff00ff;
  Brush.Color := $00FF0000;
  MoveTo(15, 415);
  LineTo(Screen.Width div 2, 62);
end;
wie macht man das aber umgekert, wenn ich die selbe eigenschaft von mehreren Objekten ändern will?
also das vereinfachen:
Delphi-Quellcode:
Button1.Enabled := True;
Button2.Enabled := True;
Button3.Enabled := True;
Button4.Enabled := True;
Das wär ziemlich praktisch find, ich...

Danke schon mal, dass ihr mir warscheinlich sagen werdet, das das so kompliziert ist, dass ich es nicht kapieren werde...
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#2

Re: Eine Eigenschaft von mehreren Objekten ändern

  Alt 25. Jul 2004, 13:45
wenn die dinger alle ButtonX heißen dann kannst du das mit einer for-schleife und Hier im Forum suchenfincomponent machen

stefan
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

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

Re: Eine Eigenschaft von mehreren Objekten ändern

  Alt 25. Jul 2004, 13:51
Hm...
Danke, aber ich finde unter Hier im Forum suchenfindcomponent leider nichts....
in welcher unit isn das? ich schau mal unter Delphi-Help nach....


Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#4

Re: Eine Eigenschaft von mehreren Objekten ändern

  Alt 25. Jul 2004, 14:27
ungefähr so:

du brauchst 5 buttons, das 5te bekommt folgende OnClick:
Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
var
  n: Integer;
begin
  for n := 1 to 4 do
    (FindComponent('Button' + IntToStr(n)) as TButton).Caption := 'Nummer: ' + IntToStr(n);
end;
stefan
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#5

Re: Eine Eigenschaft von mehreren Objekten ändern

  Alt 25. Jul 2004, 14:32
Also ich hatte das auch schonmal. Ich habe die Objekte einfach in eine TObjectList gepackt.

Delphi-Quellcode:
objList := TObjectList.Create;
objList.OwnsComponents := false;

objList.Add(Button1);
objList.Add(Button2);
objList.Add(Button3);
objList.Add(Button4);

{ und dann späeter... }

for i := 0 to (objList.Items.Count - 1) do
   TButton(objList.Items[i]).Enabled := false;
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  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 14:03 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