@TiGü: Es sind Komponenten innerhalb meines Programms, jedoch in einer TPageControl. Wenn ich nun also deinem Tipp nachgehe bekomme ich folgendes als "Lösungsansatz":
TEdit(FindComponent('Tool' + copy(Name, 5, 1) + 'E')).Text
Leider ist, wenn ich mir das mal als Showmessage zur Kontrolle ausgeben lasse, immer leer. Der Name wird jedoch korrekt zusammengesetzt.
Delphi-Quellcode:
procedure TTools.Tool1BClick(Sender: TObject);
begin
with sender
as TButton
do
begin
showmessage(TEdit(FindComponent('
Tool' + copy(
Name, 5, 1) + '
E')).Text);
//nur zum Testen das Showmessage, hier kommt später die Shellexecute rein
end;
// ShellExecute(Handle, 'open', PChar(Tool1E.text), PChar(Tool1P.Text), nil, SW_SHOW);
end;
@Schokohase: Ich verstehe aktuell nicht wie du es meinst, da dein Beispiel wie eine 1:1 Kopie meines geposteten Textes aussieht. Es sind insgesamt 15 Buttons, die wiederum auf jeweils 2*15 Edit-Felder zugreifen für das Shellexecute.
@Uwe Raabe: Die Funktion habe ich auf TiGü's Hinweis hin gefunden, scheint aber irgendwie nicht 100%ig zu funktionieren (s.o.). Und die Funktion "ExtractButtonNumber" ist mir und Delphi nicht bekannt.