Zitat von
Bernd Ua:
Crackerklasse = Seitensprung ??????
Zitat von
Bernd Ua:
[...] können wir uns dann auf diese Variante einigen [...] ( sag jetzt nicht nein - sonst komme ich mit TWinControl und WM_SetText , oder noch besser EnumWindows ...<g>)
Probleme wird es dann geben, wenn es sich nicht um "Standardeigenschaften" handeln sollte. Hier sollte
IMHO eine sichere, wartbare und übersichtliche Lösung gewählt werden.
Für "die schnelle Nummer zwischendruch" ist die
RTTI bei Published Properties aber durchaus eine gute Wahl, zb so (nur mit D7 getestet, ggf gibt es die easy accessors in anderen Versionen nicht in dieser Form)
Delphi-Quellcode:
uses
TypInfo;
//...
procedure SetStrPropIfPossible(
const AnInstance: TObject;
const APropName, AValue:
string);
begin
Assert( Assigned(AnInstance) );
if IsPublishedProp(AnInstance, APropName)
and
(PropType(AnInstance, APropName)
in [tkWChar, tkLString, tkWString])
then
SetStrProp(AnInstance, APropName, AValue);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SetStrPropIfPossible(Sender, '
Caption', '
What about RTTI?');
end;