Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit Prozedur (https://www.delphipraxis.net/7502-problem-mit-prozedur.html)

Pseudemys Nelsoni 14. Aug 2003 00:15


Problem mit Prozedur
 
hoi

ich möchte eine prozedur schreiben die folgendermaßen aussieht

Delphi-Quellcode:
procedure test(komponente: TComponent; ScreenH, ScreenW: integer);
begin

end;

jetzt wollte ich zwischen dem begin..end; ein "komponente.left" reinsetzen aber das geht nicht weil es kein "Left" gibt. Wie kann ich das vorher testen, das die komponente die sachen wie left,top etc hat?

btw: ich möchte sie nachher aufrufen in dem ich(das image nur als beispiel!) "test(image1, 100, 100)" also muss das image ja "left" haben oder nicht?

Assarbad 14. Aug 2003 00:27

Re: Problem mit Prozedur
 
Eine Moeglk. ist:

Delphi-Quellcode:
with Komponente as TImage do
begin
end;

Illuminator-23-5 14. Aug 2003 00:30

Re: Problem mit Prozedur
 
ich hab da auch so ein ähnliches problem.
nur bei mir weiß ich nicht, ob das 'ne groubBox oder eine listview ist
wie könnte man das da lösen?

Assarbad 14. Aug 2003 00:32

Re: Problem mit Prozedur
 
Na genauso ... nur statt "as TImage" nimmste sowas wie "as TWinControl"

Pseudemys Nelsoni 14. Aug 2003 01:50

Re: Problem mit Prozedur
 
danke ;)

overmoon 14. Aug 2003 09:33

Re: Problem mit Prozedur
 
Delphi-Quellcode:
     if (MyTest is TButton) then ...
     // Überprüfung, ob es sich um ein Objekt vom Typ TButton handelt

     if (MyTest = Buttin1) then ...
     // Überprüfung, ob es sich um ein bestimmtes Objekt handelt

     TButton(MyTest).Left := ...
     // Wenn man weiß, dass MyTest vom Typ TButton ist,
     // aber als TObject deklariert wurde, dann kann man so den Properties
     // Werte zuweisen

     with TButton(MyTest) do
     begin
          // Oder hier den Properties Werte zuweisen
     end;

     with MyTest as TButton do
     begin
          // oder so
     end;

neolithos 14. Aug 2003 09:39

Re: Problem mit Prozedur
 
Zitat:

Zitat von Assarbad
Na genauso ... nur statt "as TImage" nimmste sowas wie "as TWinControl"

Ich würde TControl nehmen und vorher erstmal prüfen, ob es ein Nachfahre dieser Klasse ist.

TWinControl ist schon eine Spezialisierte Klasse!

Delphi-Quellcode:
if Komponente is TControl then
   with Komponente is TControl do

Assarbad 14. Aug 2003 16:02

Re: Problem mit Prozedur
 
Sorry, ich programmiere (fast) nie mit VCL. Das Wissen stammt noch von vor 5 Jahren ;)


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