Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ImageBild auf Panel ändern (https://www.delphipraxis.net/14140-imagebild-auf-panel-aendern.html)

Deven 2. Jan 2004 23:12


ImageBild auf Panel ändern
 
Ahoi :)

Ich bins schonwieder!

Habe da eine Frage (wie immer)

Ich habe 4, 16, 36 oder 64 Panels und auf jedem Panel 1 Image mit Bild zuordnung

Jetzt möchte ich automatisch (button+klick) jedem Image ein neues Bild zuordnen


Ist das auch möglich ohne Image1. Image2. Image3. Image4. etc.
kann man das vielleicht in eine Schleife bauen?

Dankö :)

Gruß Deven

Mirilin 2. Jan 2004 23:15

Re: ImageBild auf Panel ändern
 
:hi:

wenn die TImages Image1..2..3.. heissen könntest Du Dir FindComponent zu Nutze machen...

mfg Tobias

Deven 2. Jan 2004 23:47

Re: ImageBild auf Panel ändern
 
Das ist ne gute Idee :)

Auch ne idee wie? ^^"

Ich habs grade versucht aber irgendwie komme ich net klar damit

Christian Seehase 2. Jan 2004 23:51

Re: ImageBild auf Panel ändern
 
Moin Deven,

Zitat:

Zitat von Deven
...aber irgendwie komme ich net klar damit

Da FindComponent hier doch schon recht oft besprochen wurde, wäre es hilfreich, wenn Du mal genauer angeben könntest, wo jetzt Deine Probleme damit liegen.
Raten ist etwas schwierig ;-)

Deven 2. Jan 2004 23:56

Re: ImageBild auf Panel ändern
 
Delphi-Quellcode:
for i := 1 to anzahl_p do
   begin
      C := FindComponent('Image' + IntToStr(I)); // Sucht die Komponenten
      if (c <> nil) then
      begin

      end;
  end;
Also soweit bin ich ^^
Jetzt wollte ich in die If abfrage die Bilderzuordnung rein schreiben

mit C.Picture etc.

Aber das geht ja net weil C ne andere Componente ist ..
von daher keine ahnung wie ich das nun machen soll :(

Christian Seehase 3. Jan 2004 00:08

Re: ImageBild auf Panel ändern
 
Moin Deven,

vom Prinzip her sieht's ja schon mal richtig aus.

Da Du ja einen bestimmten Typ benötigst, musst Du den Compiler dann noch mitteilen um welchen es sich handelt.
Zwei Möglichkeiten:

1. Die Variable C wird TImage deklariert, und es erfolgt ein Typecast beim FindComponent
2. Die Variable C wird als TComponent deklariert, und es erfolgt der Typecast beim Zugriff auf C

Der erste Fall erscheint mir allerdings einfacher zu handhaben und übersichtlicher

Delphi-Quellcode:
var
  C : TImage;

begin
//....
  C := (FindComponent('Image' + IntToStr(I)) as TImage);
//...


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