AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein alle untergeordneten Fenster bearbeiten
Thema durchsuchen
Ansicht
Themen-Optionen

alle untergeordneten Fenster bearbeiten

Ein Thema von J Kadison · begonnen am 17. Jan 2009 · letzter Beitrag vom 17. Jan 2009
Antwort Antwort
J Kadison

Registriert seit: 8. Sep 2007
Ort: Ebertsheim
96 Beiträge
 
Delphi 7 Personal
 
#1

alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 20:19
Hallo!

Erstmal sorry, wenn der titel nicht sehr vielsagend ist, aber mir ist keine bessere überschrift eingefallen.

Mein Problem:

Ich habe eine Komponente (möchte das ganze so allgemein halten wie möglich)
nennen wir diese Kompo mal X

Jetzt möchte ich alle Komponenten die X untergeordnet sind bearbeiten,
also als beispiel bei allen Enabled := false;
und das dann wieder von jeder komponente die ich eben herausgefunden und bearbeitet habe die untergeordnete bearbeiten.
(das geht ja dann recursiv)

aber wie kann ich denn die untergeordnete komponenten von X auslesen, bzw. dann auch noch bearbeiten.

Wäre dankbar, wenn mir jemand antworten könnte!

DANKEEEE
MFG
Joshi
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#2

Re: alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 20:40
Hmmm so z.B.:

Delphi-Quellcode:
procedure SetChildsDisabled(C: TCustomControl);
var
i: integer;
begin
  for i := 0 to C.ControlCount-1 do
  begin
    C.Controls[i].Enabled:=false;
    SetChildsDisabled(TCustomControl(C.Controls[i]));
  end;
end;
Aufruf mit

SetChildsDisabled(Panel1);
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 20:43
Delphi-Quellcode:
procedure SetEnabled(AControl:TComponent; AEnable:boolean);
var i:integer;
    Control:TComponent;
begin
  if AControl is TWinControl then begin
    for i:=1 to TWinControl(AControl).ControlCount do begin
      Control:=TWinControl(AControl).Controls[i-1];
      if Control is TWinControl then begin
        TWinControl(Control).Enabled:=AEnable;
        SetEnabled(Control, AEnable);
      end;
    end;
  end;
end;
  Mit Zitat antworten Zitat
J Kadison

Registriert seit: 8. Sep 2007
Ort: Ebertsheim
96 Beiträge
 
Delphi 7 Personal
 
#4

Re: alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 20:53
huhu!

Das hört sich schonmal gut an AAAABER ^^

wie bekomm ich das ganze dann auch so kompatibel, dass es so gut wie mit allen Komponenten klappt?
also wichtig wären mir:
  • TForm
  • TButton
  • TListbox
  • TPanel
  • TBitButton
  • TLabel
  • TMainMenu
  • . . .

Das waren mal die, die auf jedem Fall gehen sollten . . . mehr sind aber auch nicht schlecht


Bei dem 2. Beitrag fallen shconmal die Fehler mit inkompatiblen Komponenten weg, allerdings hab ich hier folgenden fehler:
[Fehler] Main.pas(122): Undefinierter Bezeichner: 'ComSettings' Benötigt diese Funktion/Procedur eine bestimmte Unit, die cih noch einbinden müsste?
MFG
Joshi
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 20:56
Sorry, Tippfehler. Habe das oben korrigiert.
  Mit Zitat antworten Zitat
J Kadison

Registriert seit: 8. Sep 2007
Ort: Ebertsheim
96 Beiträge
 
Delphi 7 Personal
 
#6

Re: alle untergeordneten Fenster bearbeiten

  Alt 17. Jan 2009, 21:04
xD

Hihi da wär der Kopp mal fast wieder schneller gewesen als die finger,
aber leider nur FAST

Hätte es mir beinahe selbst gedacht^^


Hihi okay DANKE das 2. Funzt


Thema is somit (Edit: doch noch nicht) abgeharkt



öhm sind das jetzt ALLE unterkomponenten?

weil ich habe auf meiner Form auch einen Timer ^^
wird der dann auch enabled?

terroretisch ja oder?


kann ich i-wie schaun, ob die komponente die ich enable en timer is und den dann evtl auslasse?
MFG
Joshi
  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 05:33 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