AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Variable Formularelemente

Ein Thema von blackmice · begonnen am 24. Okt 2007 · letzter Beitrag vom 24. Okt 2007
Antwort Antwort
blackmice

Registriert seit: 24. Okt 2007
Ort: Niederkrüchten
28 Beiträge
 
Delphi 5 Standard
 
#1

Variable Formularelemente

  Alt 24. Okt 2007, 09:51
Hallo,

ich habe folgendes Problem. Ich habe 64 Panels auf meinem Bildschirm und möchte bei einem davon die Farbe ändern. Die Nummer dieses Panels ergibt sich allerdings erst im Programmablauf.
Gib es eine einfacherer Methode das richtige Panel zu verändern ausser

if i := 1 then Form1.Panel1.Color := clGreen;
if i := 2 then Form1.Panel2.Color := clGreen;
...
if i := 64 then Form1.Panel64.Color := clGreen;

Das fände ich doch ziemlich langwierig.

Gruß
Blackmice
Blackmice
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#2

Re: Variable Formularelemente

  Alt 24. Okt 2007, 09:52
Hier im Forum suchenFindComponent
Bitte das nächste mal erst die Suchfunktion bemühen. Das hatte wir sicher schon ein paar hundert mal...

Achso,.. Edit nachtrag: Herzlich Willkommen in der DP
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
blackmice

Registriert seit: 24. Okt 2007
Ort: Niederkrüchten
28 Beiträge
 
Delphi 5 Standard
 
#3

Re: Variable Formularelemente

  Alt 24. Okt 2007, 09:59
Sorry, aber FindComponent funktioniert nicht. Hab ich schliesslich schon ausprobiert.

TComponent wird zwar vielleicht zurückgeliefert, hat aber keine Eigenschaft Color. Jedenfalls komme ich dann an der Stelle nicht weiter.
Blackmice
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Variable Formularelemente

  Alt 24. Okt 2007, 10:09
Zitat von blackmice:
Sorry, aber FindComponent funktioniert nicht. Hab ich schliesslich schon ausprobiert.
Dann hast dus aber nich besonders gründlich ausprobiert Bei mir und anderen funktioniert es schließlich
Zitat von blackmice:
TComponent wird zwar vielleicht zurückgeliefert, hat aber keine Eigenschaft Color. Jedenfalls komme ich dann an der Stelle nicht weiter.
Klar, daher solltest du ja die gefundene TComponent auch noch auf den entsprechenden Typ prüfen und dann casten Steht aber auch in den diversen Threads zu dem Thema
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#5

Re: Variable Formularelemente

  Alt 24. Okt 2007, 10:12
Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
var Comp: TComponent;
begin
  Comp := FindComponent('Panel' + ComboBox1.Items[ComboBox1.ItemIndex]);
  if Assigned(Comp) and (Comp is TPanel) then
    TPanel(Comp).Color := clGreen;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
blackmice

Registriert seit: 24. Okt 2007
Ort: Niederkrüchten
28 Beiträge
 
Delphi 5 Standard
 
#6

Re: Variable Formularelemente

  Alt 24. Okt 2007, 10:46
Ah danke, jetzt geht es. Mir fehlte der Hinweis mit TPanels(comp). Und den hatte ich in den Threads die ich bisher gelesen habe zu FindComponent auch nicht gefunden.
Blackmice
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Variable Formularelemente

  Alt 24. Okt 2007, 10:51
Zitat von blackmice:
Und den hatte ich in den Threads die ich bisher gelesen habe zu FindComponent auch nicht gefunden.
Also erstmal schön, dass es jetzt klappt und dir geholfen werden konnte, aaaaaber: ohne Casten ist FindComponent doch kaum zu gebrauchen, daher kann ich ehrlich gesagt nicht glauben, dass das nirgendwo zu sehen gewesen sein sollte

Aber genug davon (ich muss auch immer auf allem rumreiten ), hauptsache es geht jetzt
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
blackmice

Registriert seit: 24. Okt 2007
Ort: Niederkrüchten
28 Beiträge
 
Delphi 5 Standard
 
#8

Re: Variable Formularelemente

  Alt 24. Okt 2007, 10:54
Ja ja, immer diese Neulinge, die hier reinstolpern und von nix ne Ahnung haben, furchtbar

Vielen Danke jedenfalls
Blackmice
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Variable Formularelemente

  Alt 24. Okt 2007, 11:06
Zitat von blackmice:
Ja ja, immer diese Neulinge, die hier reinstolpern und von nix ne Ahnung haben, furchtbar

Vielen Danke jedenfalls
Nein das Forum lebt doch gerade von den Fragen. Wären hier nur Leute, die Fragen beantworten, wäre hier tote Hose.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:13 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