Optionsgruppe auswerten

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Optionsgruppe auswerten

Re: Optionsgruppe auswerten

von mikeleb » So, 01.03.2020 12:50

Hallo,
als Ergänzung: ApacheOpenOffice und LibreOffice unterscheiden sich beim Umgang mit Optionsfeldern ein wenig.
Eine Gruppe von Optionsfeldern bedeutet, dass stets nur eines der Felder aktiviert sein kann.
Unter AOO gehören mehrere Optionsfelder zu einer Gruppe, wenn sie denselben Namen haben. Unter LO geht das auch, man kann aber (und das halte ich für die geschicktere Variante) einen Gruppennamen vergeben. Verschiedene Optionsfelder mit demselben Gruppennamen gehören dann zusammen.
Ausgehend von F3K Total's Datei habe ich das mal abgewandelt.
Zwei Optionsfelder ("Optionsfeld 1" und "Optionsfeld 2"), die beide zur Gruppe "Abitur" gehören. Um jetzt herauszubekommen, welche Option gewählt ist, kann man entweder den Status der beiden Felder abfragen oder nur eines (wenn das nicht gewählt ist, muss es ja das andere sein).

Code: Alles auswählen

Sub abitur_status
	oForm=Thiscomponent.DrawPage.Forms.getByIndex(0)
	oControl=oForm.getByName("Optionsfeld 1")
	if oControl.State = 1 then
		sText = oControl.label
	else
		sText = oForm.getByName("Optionsfeld 2").label
	endif
	msgbox ("Es ist """ & sText & """ausgewählt",64,"Optionsfelder")
end sub
Dateianhänge
Optionsgruppe neu.odt
(10.87 KiB) 130-mal heruntergeladen

Re: Optionsgruppe auswerten

von F3K Total » Sa, 29.02.2020 12:46

Re: Optionsgruppe auswerten

von F3K Total » Sa, 29.02.2020 09:46

Moin, ist ein bissel komplizierter,
anbei ein Beispiel mit zwei Optionsgruppen, denen ich die Namen "Abitur" und "Farbe" gegeben habe.
Die dazugehörigen Makro-auslösenden Schaltflächen tragen in ihrer Eigenschaft "Zusatzinformation" den Namen der auszuwertenden Gruppe.
Dann geht's mit diesem Makro:

Code: Alles auswählen

Sub Get_Option_Status(Event)
    sGoupname = Event.source.model.Tag
    for i = 0 to ThisComponent.Drawpage.count -1 
        if ThisComponent.Drawpage(i).Name = sGoupname then
            oGroup = ThisComponent.Drawpage(i)
            for k = 0 to oGroup.count - 1
                oControl = oGroup(k).Control
                if oControl.State = 1 then
                    sText = oControl.label
                    msgbox ("Es ist """ & sText & """ausgewählt",64,"Optionsfelder")
                endif
            next k
        endif
    next i
End Sub
Beispiel anbei, Gruß R
Dateianhänge
Optionsgruppe.odt
(14.48 KiB) 128-mal heruntergeladen

Nach oben