Seite 1 von 1

Pop Up mit 3 Schaltflächen die Befehle in anderem Formular

BeitragVerfasst: 12. Sep 2019, 14:56
von wuffwuff2003
Hallo,
Ich möchte im Formular "1" eine Schaltfläche haben, die dann ein PopUp Fenster öffnet , in diesem gibt es dann 3 Schaltflächen die aber Befehle im Formular "1" auslösen müssten. Wie kann ich das dem VBA beibringen dass er diesen Code der hinter einer jeden Schaltfläche steckt dann im Formular "1" abarbeitet.

Es geht mir drum auf dem 1. Formular nur 1 Button zu sehen, durch dessen Druck dem Anwender aber 3 Möglichkeiten geboten werden, was er machen kann.

Vielen Dank
Mfg

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 12. Sep 2019, 15:10
von Beaker s.a.
@wuffwuff2003
Nimm doch statt dem Button ein Kombi, das die drei Möglichkeiten anzeigt, und
steuere die Aktion(en) von da. Ich finde PopUp-Formulare, die dann irgendwas
mit dem aufrufenden Form machen zu umständlich. Was in einem Form geschieht,
sollte möglichst auch in diesem Form gesteuert werden. Falls du dein Vorhaben wg.
Platzproblemen angehst, wäre das Kombi meine erste Wahl.
gruss ekkehard

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 12. Sep 2019, 16:02
von wuffwuff2003
Hallo,
Ja genau wegen dem Platzproblem, wäre es von Vorteil wenn ein zusätzliches Popup aufklappt
Mfg

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 12. Sep 2019, 18:55
von Gast
Was ist aus den chinesischen Zeichen geworden? :(

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 12. Sep 2019, 20:48
von wuffwuff2003
Ich hab die heute rausbekommen, nachdem ich das Backend reparieren hab lassen, ließen sich diese Felder auch wieder löschen, ich behalte das Ganze jetzt mal weiter im Auge ob sich das wiederholt. Kann dazu noch nichts sagen, weil momentan die Datenbank umgebaut wird, und noch nicht operationell ist.
Jetzt muss ich dieses Pop-up Problem lösen vorerst noch :/


Vielen Dank
Mfg

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 13. Sep 2019, 14:09
von Bitsqueezer
Hallo,

mit Event-Umleitung geht das ganz einfach.

Du mußt das Popup-Formular mit einer modulglobalen Variablen mit dem Attribut "WithEvents" öffnen. Dem Popup-Formular verpaßt Du dann Public Events, die Du im aufrufenden Formular dann verwenden kannst.

Eventumleitung.zip


Im Beispiel sind drei Buttons, die selbst nur eine Code-Zeile im Click-Event enthalten, um den selbstdefinierten Event auszulösen.

Events können natürlich auch mit Parameter definiert werden, wenn es also z.B. Navigationsbuttons sein sollen, könnte man das ganze auch mit einem einzelnen Event mit passenden Parametern regeln.

Das Popup-Formular kann auf diese Weise universell in allen Formularen eingesetzt werden, da es nichts über das aufrufende Formular wissen muß.

Gruß

Christian

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 13. Sep 2019, 23:27
von wuffwuff2003
Hallo, das hört sich gut an, werde ich am Montag gleich mal versuchen
Vielen Dank
Mfg

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 15. Sep 2019, 10:22
von Gast
Hallo,
ein Klick auf cmdOpenForm2 bewirkt nichts.
WithEvents scheint nicht zu funktionieren, aber ich habe auch keinen blassen Schimmer, wie es wirken soll.
Gruß Carla

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 15. Sep 2019, 12:12
von knobbi38
Hallo Carla,

möglicherweise wird frmButtons außerhalb des sichtbaren Bereiches geöffnet. Setze mal testweise "Automatische Zentrieren" in frmButtons auf "ja".

Wenn du dir den Eventhandler vom "cmdOpenForm2" anschaust, wird dort eine neue Instanz von frmButton erstellt und anschießend sichtbar gemacht.

Vereinfacht ausgedrückt wird mit WithEvents wird eine Variable deklariert, die ein Ereignis empfangen kann und mit RaiseEvent wird so ein Ereignis ausgelöst. Näheres findest du auch in der OH.

Gruß Ulrich

Re: Pop Up mit 3 Schaltflächen die Befehle in anderem Formul

BeitragVerfasst: 15. Sep 2019, 12:13
von Bitsqueezer
Hallo Carla,

könnte es sein, daß Du Makros deaktiviert hast?

Der Klick auf den einzigen Button im Formular öffnet ein Popup-Formular mit drei Buttons.

Das WithEvents stellt alle Events des Formulars zur Verfügung, die man selbst definiert hat. Damit kann man die Eventprozeduren des anderen Formulares in das erste einbauen.
Der Event wird im Popup-Formular ausgelöst und dann im aufrufenden Formular verwendet.

Gruß

Christian