AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi TAction von SubForm an MainForm übergeben, wie?
Thema durchsuchen
Ansicht
Themen-Optionen

TAction von SubForm an MainForm übergeben, wie?

Ein Thema von KHJ · begonnen am 1. Nov 2006 · letzter Beitrag vom 13. Nov 2006
Antwort Antwort
KHJ

Registriert seit: 15. Dez 2005
35 Beiträge
 
Delphi 11 Alexandria
 
#1

TAction von SubForm an MainForm übergeben, wie?

  Alt 1. Nov 2006, 13:00
Hallo,

ich habe in mehreren SubForms Aktionen erstellt die ich bei der Aktivierung des SubForms im Mainform an einen Menüeintrag und ActionToolbar hängen möchte. Dabei sollen alle Eigenschaften der Aktion aus SubForm verwendet werden.

Ich habe dazu im MainForm und im SubForm Aktionen definiert.
Wie kann ich jetzt die SubFormaktion an die entsprechende MainFormaktion übergeben?

Mainform.Aktion := SubForm.Aktion;

kompiliert und die Eigenschaften werden zu diesem Zeitpunkt auch übergeben.

Wenn ich in SubForm.Aktion.Enabled := true setze, ändert sich aber nichts bei MainForm.Aktion.Enabled.

Ist der Ansatz überhaupt richtig oder sollte ich ganz anders vorgehen?

Danke für einen Hinweis

Karlheinz
Karlheinz Jansen
  Mit Zitat antworten Zitat
KHJ

Registriert seit: 15. Dez 2005
35 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: TAction von SubForm an MainForm übergeben, wie?

  Alt 1. Nov 2006, 14:23
Konnte das Problem jetzt besser zuordnen.

MainForm.Aktion entspricht nach der Übergabe SubForm.Aktion und auch die Eigenschaft Enabled ändert sich in beiden.

Jetzt stellt sich nur noch die Frage wie ich meiner ActionToolBar, die MainForm.Aktion darstellt, bei bringe, daß sich die Eigenschaften von MainForm.Aktion geändert haben sobald ich in SubForm.Aktion was ändere (z.b. Image, Enabled etc.).

Eine Idee warum das nicht funktioniert?

Karlheinz
Karlheinz Jansen
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#3

Re: TAction von SubForm an MainForm übergeben, wie?

  Alt 1. Nov 2006, 14:30
Eine Action kennt nur eine ActionList. Dieser gibt sie Bescheid, dass sich was geändert hat. Diese ActionList gibt wiederum ihrem ActionManager bescheid, der dann die Menüs, ActionButtons usw. anpasst.
Also entweder Du verwendest einen globalen ActionManager, der alle Actions in allen Formen verwaltet oder Du veranlasst den ActionManager der Subform die Action der Subform der Mainform neu zuzuweisen, da hier ja die Übernahme der Eigenschaften zu funktionieren scheint.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
KHJ

Registriert seit: 15. Dez 2005
35 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: TAction von SubForm an MainForm übergeben, wie?

  Alt 12. Nov 2006, 18:56
Hallo,

Zitat von Sidorion:
Eine Action kennt nur eine ActionList. Dieser gibt sie Bescheid, dass sich was geändert hat. Diese ActionList gibt wiederum ihrem ActionManager bescheid, der dann die Menüs, ActionButtons usw. anpasst.
Also entweder Du verwendest einen globalen ActionManager, der alle Actions in allen Formen verwaltet oder Du veranlasst den ActionManager der Subform die Action der Subform der Mainform neu zuzuweisen, da hier ja die Übernahme der Eigenschaften zu funktionieren scheint.
Ich habe jetzt lange probiert und viel in Newsgroups gesucht, aber keinen Weg gefunden die Eigenschaften der Action im Mainform (z.B. in einer ActionToolbar) automatisch richtig darzustellen. Welche Funktion muss ich hierzu aufrufen?

Ist der Weg den ich einschlagen möchte überhaupt im Konzept der Action's vorgesehen?

Zur Zeit habe ich folgendes probiert:

Zuweisung beim Aufruf des SubForms aus dem MainForm
MainForm.actCalculate := SubForm.actCalculate;

Änderungen nur in der aktiven SubForm z.B.
SubForm.actCalculate.Enabled := true;

führt auch dazu, daß automatisch
MainForm.actCalculate.Enabled = true ist.

Aber in der ActionToolBar bleibt das zugehörige Element disabled. Wie kann ich jetzt die Änderung in MainForm.actCalculate bis zur Darstellung in der ActionToolBar etc. "weiterleiten"?

Kann mir jemand weiterhelfen?

Schon mal Danke !!!

Karlheinz
Karlheinz Jansen
  Mit Zitat antworten Zitat
KHJ

Registriert seit: 15. Dez 2005
35 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: TAction von SubForm an MainForm übergeben, wie?

  Alt 13. Nov 2006, 17:53
Kann mir in dieser Sache jemand weiterhelfen????


Gruß Karlheinz
Karlheinz Jansen
  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 07:29 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