AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Gibts sowas wie findproperty?

Ein Thema von SearchBot · begonnen am 6. Jul 2013 · letzter Beitrag vom 7. Jul 2013
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.960 Beiträge
 
Delphi 12 Athens
 
#1

AW: Gibts sowas wie findproperty?

  Alt 7. Jul 2013, 00:04
Ja, es gibt so etwas wie findproperty...

Nennt sich GetPropInfo aus der Unit TypInfo. Da bekommst du einen Pointer auf diese Information (PPropInfo), so dass du über PropertyInfo.PropType^.Kind z.B. den Typ der Property heraus bekommst. Mit SetPropValue kannst du den Wert einer Property setzen. Dafür musst du nicht unbedingt vorher die Information holen, da das rein über den Namen einfach so geht, aber ich mache das vorher um, wenn es eine Klasse ist, mir diese zu holen.

So kann ich auch Font.Name setzen, da ich zuerst feststelle, dass Font vom Typ tkClass existiert, mir das Objekt hole und SetPropValue dann auf dieses Objekt anwende, sprich dort Name setze.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: Gibts sowas wie findproperty?

  Alt 7. Jul 2013, 00:18
Wie wäre es denn mit diesem hier?
Delphi-Quellcode:
procedure TForm1.SetAll(sText : string; bChecked : Boolean);
Var i : integer;
begin
  for i := 0 to ComponentCount - 1 do begin
         if Components[i] is TEdit then TEdit(Components[i]).Text := sText
    else if Components[i] is TCheckBox then TCheckBox(Components[i]).Checked := bChecked
    ;
  end;
end;
(nur hingedaddelt, nicht getestet)
  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 22:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz