Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf den Alert (https://www.delphipraxis.net/91885-jedi-jvdesktopalert-ueber-die-buttons-zugriff-auf-den-alert.html)

Captnemo 11. Mai 2007 11:30


Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf den Al
 
Hi Leute,

ich benutze die JvDesktopAlert-Komponente in einem Programm. Gefällt mir eigentlich sehr gut und ist auch gut zu händeln.
Man kann ja auf den DesktopAlerts auch Buttons definieren und mit einer Procedure verknüpfen.
Nun erzeuge ich die DesktopAlerts dynamisch, d.h. es kann ja durchaus mehrere geben, die dann übereinander angezeigt werden.
Wenn jetzt auf den Button geklickt wird, muß ich ja in meiner Procedure irgendwie erkennen, von welchem DesktopAlert der Button geklickt wurde, weil ich den auf dem Alert stehenden Text dann verwenden will.
In der Procedure hab ich aber nur den Sender als TOject. Wie kann ich daraus auf die dazugehörige Form bzw. deren Komponenten zugreifen?

Danke für eure Hilfe.

marabu 11. Mai 2007 12:00

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Hallo,

üblicherweise wird die auslösende Komponente als erster Parameter (Sender) der Event-Signatur übermittelt. Sollte das hier anders sein?

Freundliche Grüße

Robert Marquardt 11. Mai 2007 12:10

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Ja, aber das duerfte der Button sein und nicht der Alert. Da sollte man aber mit ((Sender as TButton).Owner as TJvDesktopAlert) weiterkommen.

marabu 11. Mai 2007 12:13

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Sorry, ich hatte nur den ersten Absatz gelesen - ich prüfe noch wie das geschehen konnte.

Captnemo 11. Mai 2007 12:21

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Ja, so hatte ich mir das auch gedacht. Aber wenn ich z.B. mal sowas in die Procedure einfüge
Delphi-Quellcode:
   ShowMessage(((Sender as TButton).Owner as TJvDesktopAlert).MessageText);
bekomme ich die Fehlermeldung "Ungültige Typenumwandlung", wobei mir nicht klar ist, warum.

Robert Marquardt 11. Mai 2007 12:23

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Na dann in die JVCL Source einsteigen und pruefen was als Sender uebergeben wird bzw. ob der Button als Owner auch den JvAlert hat.

Captnemo 11. Mai 2007 12:40

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
So hat's dann endlich hingehauen:

Delphi-Quellcode:
      ShowMessage(((Sender as TJvDesktopAlertButton).Owner as TJvFormDesktopAlert).lblText.Caption);
Allerdings erst als ich JvDesktopAlertForm mit in die Uses eingebunden habe. Davor gab es nur JvDesktopAlertButtons.
Die eigentliche Eigenschaft, die ich ja auch vorher beim erzeugen des Alerts setze heißt MessageText, aber diese Eigenschaft kann ich so wohl nicht zugreifen.

Gut, verstanden hab ich's jetzt zwar nicht, aber es funktioniert ;-)

Dank an alle

Robert Marquardt 11. Mai 2007 12:52

Re: Jedi-JvDesktopAlert-> Über die Buttons Zugriff auf de
 
Na schreib mal einen Fehlerbericht auf englisch in unserer Newsgruppe. news://forums.talkto.net:119/jedi.vcl
Das sollte sich doch umfrickeln lassen.


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