![]() |
TAction von SubForm an MainForm übergeben, wie?
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 |
Re: TAction von SubForm an MainForm übergeben, wie?
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 |
Re: TAction von SubForm an MainForm übergeben, wie?
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. |
Re: TAction von SubForm an MainForm übergeben, wie?
Hallo,
Zitat:
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 |
Re: TAction von SubForm an MainForm übergeben, wie?
Kann mir in dieser Sache jemand weiterhelfen????
Gruß Karlheinz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz