Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Parametisierung vorgefertigter Delphifunktionen (https://www.delphipraxis.net/151372-parametisierung-vorgefertigter-delphifunktionen.html)

chillermiller 14. Mai 2010 19:49


Parametisierung vorgefertigter Delphifunktionen
 
Hallo erstmal,

ich bin gerade am Schreiben eines kleinen Programms und brauche eure Hilfe, da ich einfach nicht weiterkomme!!! :wall:
Und zwar brauche ich etwas, dass mir die Labels parametisiert.

Also zum Beispiel so:

Delphi-Quellcode:
procedure machwas(p: integer);
begin
Label[p].Caption:='Hallo';
Combobox[p].Itemindex:=1;
end;
Allerdings weiß jeder, dass das nicht funktionieren wird.
Deshalb bitte ich euch um Lösungsvorschläge.

Hertlichen Dank!

[edit=Matze][delphi]-Tags eingefügt. Zukünftig bitte selbst daran denken. MfG, Matze[/edit]

mkinzler 14. Mai 2010 19:54

Re: Parametisierung vorgefertigter Delphifunktionen
 
Du suchst wohl .FindComponent()

H4ndy 14. Mai 2010 20:01

Re: Parametisierung vorgefertigter Delphifunktionen
 
Ganz easy :)
Delphi-Quellcode:
var
  AEdit: TEdit;
begin
  For i:=0 to 10 do
  begin
    AEdit := Form.FindComponent('edit'+IntToStr(i));
    if Assigned(AEdit) then
      AEdit.Text := 'test';
  End;
end
Achtung, Kopf-Code! Kann, muss aber nicht funktionieren.

Matze 14. Mai 2010 20:04

Re: Parametisierung vorgefertigter Delphifunktionen
 
Ich hätte es ungefähr so gelöst:

Delphi-Quellcode:
(FindComponent('Label' + IntToStr(p)) as TLabel).Caption := '...';
(FindComponent('ComboBox' + IntToStr(p)) as TBomboBox).ItemIndex := ...;

H4ndy 14. Mai 2010 20:16

Re: Parametisierung vorgefertigter Delphifunktionen
 
Zitat:

Zitat von Matze
Ich hätte es ungefähr so gelöst:

Entspricht aber nicht den Regeln der defensiven Programmierung.
FindComponent kann NIL zurueckgeben, von daher *kann* dein Code einen Absturz provozieren.

chillermiller 14. Mai 2010 20:17

Re: Parametisierung vorgefertigter Delphifunktionen
 
Alles klar. Vielen Dank!

alzaimar 15. Mai 2010 07:30

Re: Parametisierung vorgefertigter Delphifunktionen
 
Zitat:

Zitat von H4ndy
Entspricht aber nicht den Regeln der defensiven Programmierung.
FindComponent kann NIL zurueckgeben, von daher *kann* dein Code einen Absturz provozieren.

Erstens finde ich keine Vorgabe, das man sich an diese Regeln halten muss und zweitens stürzt nichts ab.
Was Du meinst, ist eine Exception, was widerum zu den Grundlagen des 'Clean Code' zählt (sofern eine ordentliche Ausnahmebehandlung implementiert ist).

RWarnecke 15. Mai 2010 08:10

Re: Parametisierung vorgefertigter Delphifunktionen
 
Und hier ist das Cross-Posting im Delphi-Forum.

mkinzler 15. Mai 2010 08:11

Re: Parametisierung vorgefertigter Delphifunktionen
 
Zudem muss eine Antwort auch keine vollständige wasserfeste Lösung beinhalten. Diese zu erstellen obliegt imo dem ursprünglichen Fragesteller.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 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