AGB  ·  Datenschutz  ·  Impressum  







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

Wie Actions erstellen?

Ein Thema von moelski · begonnen am 12. Nov 2008 · letzter Beitrag vom 12. Nov 2008
Antwort Antwort
Seite 1 von 2  1 2      
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#1

Wie Actions erstellen?

  Alt 12. Nov 2008, 09:09
Moin !

bis dato habe ich Actions nur verwendet, aber ich würde gerne mal selbst eine erstellen. Mein Ziel ist ganz bescheiden ... Ich möchte bei einem TChart die Legende ein / ausschalten.

Wie ich generell eine Action erstellen kann ist mir ja klar -> über den ActionManager. Aber danach stehe ich irgendwie auf dem Schlauch.

Mir ist z.B. nicht klar wie das Handling funktioniert wenn ich 2 Charts habe. Dann sollte ja die Action je nach aktivem Chart reagieren (Bsp: Wenn ich einem Button diese Action zuweisen würde, dann müsste er je ein- bzw ausgeschaltet sein je nach Zustand der jeweiligen Legende.

Gibt es irgendwo ein Tutorial was das Erstellen von Actions in Kürze beschreibt?
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:44
es wird doch sicherlich ein Parameter namens Sender übergeben, oder? in diesem objekt (bzw. dies ist nur die referenz auf das objekt) steckt dann das passende chart, d.h. du darfst in der action nicht ein bestimmtes chart direkt ansprechen, sondern dies wie folgt machen:
TChart(Sender).Property
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:45
Oder per Softcast
(Sender as TChart).Propery
Markus Kinzler
  Mit Zitat antworten Zitat
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:47
Moin !

Naja schon, aber das kann noch nicht der ganze Trick sein. Denn vorher weiss die Methode auf welchen Chart sie aktuell arbeiten muss? Wie gesagt ... Gehen wir mal davon aus du hast 2 Charts in der Anwendung.
Da muss also noch irgendein Mechanismus drumrum, um das aktuelle Control zu ermitteln.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:48
Rate mal was Sender referenziert?
Markus Kinzler
  Mit Zitat antworten Zitat
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:55
Moin !

Hmm evtl. habe ich da auch einen Gedankenfehler. Gehen wir mal hiervon aus:
Ich habe einen Button der eine Aktion bekommt und eben im Formular 2 Charts.

Wenn ich nun den Button drücke ist doch der das aktive Control. Wäre dann Sender nicht mein Button?
Das man über (Sender as TChart).Propery die Sache typcasten kann ist mir im Grunde ja klar. Aber mir fehlt im Moment die "Verbindung" zwischen der Action und dem aktiven Chart.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 10:58
Ok da haben wir dich falsch verstanden. So kann die Methode also nicht wissen, welches Chart "aktiv" ist. das müsstest du dir irgendwie merken
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#8

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 11:02
hm, dass es in die richtung ging war mir echt nicht klar das könntest dann unter anderem über den [b[tag[/b] des buttons lösen.

nicht um zu meckern: aber warum nutzt die keine zwei button? als user mag ich es, wenn ich eine eindeutige zuordnung von button und chart habe! ich kenne zwar deine applikation nicht, aber das wäre (mir) insgesamt wichtig, eben aus konsistenzgründen
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 11:06
Hi,

der Sender bei den Actions ist immer das Control, welches die Action aufruft. In deinem Fall der TButton.
Das hat folgenden Vorteil: Du möchtest die gleiche Aktion über einen Menüpounkt, einen Button und über ein PopUpMenü realisieren.
Du erstellst also die drei Teile, die eine Action und weisst nun nur noch die Action den drei Controls zu. So wird FUnktionalität, Icon und Caption direkt an alle drei Controls übergeben.
Das wsa du möchtest geht so nicht, das musst du, wie mkinzler sagte, dir merken

Gruß
angos
Ansgar
  Mit Zitat antworten Zitat
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#10

Re: Wie Actions erstellen?

  Alt 12. Nov 2008, 11:08
Moin !

@shark:
Der Grund ist folgender: Ich möchte in unserer Anwendung Charts dynamisch erzeugen. Da wäre es eher unpraktisch wenn ich für jedes Chart einen Button hätte. Bei 2 Charts mags ja noch gehen, aber danach wirds unlustig und unübersichtlich.

Und genau das ist ja eben der Vorteil von Actions das man "Aufgaben" einmal proggt und die dann eben wiederverwenden kann.

Bei TRichView gibt es eine eigene Action Unit. Wenn ich die einbinde, dann habe ich Standard Actions wie Fett, Kursiv, etc. Und dort erkennt die Action Unit auch eigenständig welches TRichView gerade aktiv ist. Drum bin ich eigentlich davon ausgegangen das es im Umfeld Actions einen Mechanismus geben muss. Denn das ist ja letztlich eine Sache die bei Actions immer auftreten müsste?!
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 20:08 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