AGB  ·  Datenschutz  ·  Impressum  







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

Komponente und Events

Ein Thema von runger · begonnen am 28. Dez 2004 · letzter Beitrag vom 28. Dez 2004
Antwort Antwort
runger
(Gast)

n/a Beiträge
 
#1

Komponente und Events

  Alt 28. Dez 2004, 09:49
Hallo,

ich hab folgendes Problem:
wir haben eine Komponente aus Tcustomcontrol abgleitet.
Darauf werden zur Laufzeit Images plaziert.
Wie kann ich feststellen welches Image angeklickt wurde?
Wenn ich die Eventroutine für Tcustomcontrol verwende reagiert
die Komponente nicht sobald ich auf Timage bin. Für jedes Image
ist auch sinnlos.

Steh ich einfach nur auf dem Schlauch oder was mach ich falsch?

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Komponente und Events

  Alt 28. Dez 2004, 09:57
Zitat von runger:
Für jedes Image ist auch sinnlos.
Wieso sinnlos. Wenn du auf das Click Event eines Images reagieren willst!
Du kannst doch beim Erzeugen deines Bildes die OnClick Methode überschreiben und in deiner Komponente abhandeln. Der Sender sagt dir dann, welche Bild geklickt wurde.
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#3

Re: Komponente und Events

  Alt 28. Dez 2004, 10:34
Wie sagt er mir das?
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#4

Re: Komponente und Events

  Alt 28. Dez 2004, 10:45
Ach so, ich hab vergessen zu sagen, dass die Images als Arryay deklariert sind.
Rainer
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Komponente und Events

  Alt 28. Dez 2004, 10:52
Ich nehm mal an, du erstellst deine Images innerhalb deiner Komponente dynamisch. Also irgendwo muss sowas stehen wie:
img := TImage.create (Self) ; Dies muss du noch etwas ausbauen, damit du nachher noch weisst, was welches Image ist:
Delphi-Quellcode:
img := TImage.create (Self) ;
with img do begin
   Tag := index ; // index ist deine Zählvariable ;
   index := index + 1 ;
   OnClick := MeinOnClick ;
end ;
Tag dient später dazu, dein geklicktes Image zu identifizieren. Dies geschieht in der MeinOnClick Methode, welche du als privat in deiner Komponentenklasse deklarierst, wie folgt:

Delphi-Quellcode:
TMeineKompo = class
private
  procedure MeinOnClick (Sender : TObject) ;
  ...
end ;

procedure TMeineKompo.MeinOnClick (Sender : TObject) ;
var
 img : TImage ;
begin
     if Sender is TImage then begin
         img := Sender as TImage ;
         case Tag of
           1: ; // erstes dynamisch erzeugtes Image wurde geklickt
         end ;
     end ;
end ;
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#6

Re: Komponente und Events

  Alt 28. Dez 2004, 10:57
OK,

ich danke dir!
Ich hatte geglaubt ich könnte direkt auf die Indizes zugreifen.
Aber so ist mir auch geholfen.
Nochmals danke!

Rainer
  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 06:40 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