(Gelöst)Formulare öffnen per Button

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Decrone
*
Beiträge: 13
Registriert: Mo, 26.04.2010 19:00

(Gelöst)Formulare öffnen per Button

Beitrag von Decrone »

Ich habe ein Hauptformular, von denen ich aus alle anderen Formulare per Button öffne. Was mich nur stört ist, ich habe für jedes Formular öffnen ein eigenes Makro.

Code: Alles auswählen

Sub OpenFormAuftraggeberTabelleFormular
	ThisDatabaseDocument.FormDocuments.getByName( "AuftraggeberTabelleFormular" ).open
End Sub
Jetzt meine Frage:
Kann man irgendwie dem Button eine Information hinterlassen welches Formular geöffnet werden soll, so das man nur ein Makro benutzt und sobald man den Button drückt wird dem Makro mitgeteilt welches Formular geöffnet werden soll, geht das in dieser Art oder ist das so gar nicht möglich?

Gruß Dec
Zuletzt geändert von Decrone am Mi, 05.05.2010 19:04, insgesamt 4-mal geändert.
guenther
*
Beiträge: 19
Registriert: Mo, 26.04.2010 07:11

Re: Formulare öffnen per Button

Beitrag von guenther »

du könntest die information im Tag-feld des buttons unterbringen

Code: Alles auswählen

sub evCtl_OpenFrom(event as object)
   	ThisDatabaseDocument.FormDocuments.getByName( event.Source.Model.Tag ).open 'Formularname
end sub 
siehe Bsp02.odb, frm_OpenCloseForm http://members.aon.at/schardinger/openoffice/index.html

servus, günther
Decrone
*
Beiträge: 13
Registriert: Mo, 26.04.2010 19:00

Re: Formulare öffnen per Button

Beitrag von Decrone »

Vielen, vielen Dank Günther :D
das funktioniert super, zwar mußte ich erstmal schauen wo ich den Tag finde :lol: aber es ging dann doch relativ schnell.

Gruß Dec

PS.
geht das auch eventuell mit 2 Parametern?
Zuletzt geändert von Decrone am Fr, 30.04.2010 21:22, insgesamt 1-mal geändert.
ddraht
***
Beiträge: 60
Registriert: Di, 06.04.2010 16:35
Wohnort: Altenberge

Re: (Gelöst)Formulare öffnen per Button

Beitrag von ddraht »

Hallo Dec,

Eigenschaften: Schaltfläche
Zeile Zusatzinformationen hier den Namen des Formulars eintragen.

Konnte ich auch gut gebrauchen.

Gruß
ddraht
MySQL 5.5.9
Oo 3.3.0, Build 9567
Mac os x 10.7.2
Decrone
*
Beiträge: 13
Registriert: Mo, 26.04.2010 19:00

Re: Formulare öffnen per Button

Beitrag von Decrone »

Ja das ist ne feine Sache :D

wenn man soviele Forms hat und jedes hat sein Makro z.B. öffnen und schließen, da kommt dann doch allerhand an Makro's zusammen. Jetzt würde mich mal Interessieren ob das ganze auch mit 2 Parametern geht oder gibt es ein Befehl zum schließen für ein bereits (Aktive's) geöffnetes Formular?

Gruß Dec
ddraht
***
Beiträge: 60
Registriert: Di, 06.04.2010 16:35
Wohnort: Altenberge

Re: Formulare öffnen per Button

Beitrag von ddraht »

Hi Dec,

logischerweise mit close statt open ;)

ddraht
MySQL 5.5.9
Oo 3.3.0, Build 9567
Mac os x 10.7.2
Decrone
*
Beiträge: 13
Registriert: Mo, 26.04.2010 19:00

Re: Formulare öffnen per Button

Beitrag von Decrone »

ne :lol: das ist mir schon klar :D

nur es wäre ja schön, wenn man 2 Parameter mit übergeben könnte! Erste Para öffnet Formular, 2 Para schließt Formular!

das öffnen und schließen ist nicht das Problem!

Verstehste 8)

Gruß Dec
guenther
*
Beiträge: 19
Registriert: Mo, 26.04.2010 07:11

Re: Formulare öffnen per Button

Beitrag von guenther »

zwei parameter: du kannst ja jede information des buttons auslesen: z.B. Label, Name usw.

sonst besser, beliebige parameteranzahl:

im Tag-String kannst du ja beliebige informationen unterbringen und auslesen:

"info1,info2,info3 ..."

geht einfach mit join(...) und split(...)

servus, günther
Decrone
*
Beiträge: 13
Registriert: Mo, 26.04.2010 19:00

Re: Formulare öffnen per Button

Beitrag von Decrone »

Vielen Dank Günther,

mit Split() hatte ich mir auch schon überlegt gehabt, bin dann aber irgendwie von diesem Gedanken weg gekommen aber nachdem du mich da nochmal drauf hingewiesen hast, ist folgendes bei raus gekommen. Ich weiß zwar nicht genau ob man mit dem Syntax so umgeht aber es funktioniert 1A

Code: Alles auswählen

sub evCtl_OpenFrom(event as object)
	DIM Tag AS String
	Tag = event.Source.Model.Tag
	oForm() = Split(Tag, ",")
	ThisDatabaseDocument.FormDocuments.getByName( Trim(oForm(0)) ).open
	ThisDatabaseDocument.FormDocuments.getByName( Trim(oForm(1)) ).close
end sub 
Ich habe Trim() dazu genommen, um eventuell vorhandene Leerzeichen wegzubekommen!

Ich kann mich nochmals bei dir recht herzlich bedanken und einen schönen 1 Mai wünsche ich Dir /Euch :D

Gruß Dec
Swichi
Beiträge: 8
Registriert: Di, 30.03.2010 16:37

Re: (Gelöst)Formulare öffnen per Button

Beitrag von Swichi »

Vielen Dank auch von mir... Genau das, was ich wollte.
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: (Gelöst)Formulare öffnen per Button

Beitrag von DPunch »

Aloha
Flizz hat geschrieben:Basic-Laufzeitfehler, Objektvariable ist nicht belegt... weis jemand was ich falsch mache?
Hast Du ein Formular mit Namen "AuftraggeberTabelleFormular"?
Antworten