Ich fange gerade damit an, erstmalig in die Programmierung mit Star Basic einzusteigen und habe sowas noch nie gemacht. Die folgende Frage mag daher also trivial sein.
Ich habe ein Tabellendokument, in dessen Zelle A1 ich drei Markierfelder gezeichnet habe. Es handelt sich also nicht um einen Dialog, sondern um Elemente direkt in der Zelle. Wie kann ich aus einem Makro heraus auf diese zugreifen?
René Martins Buch 'Open Office Programmierung' geht auf solche Elemente in Dialogen ein, so wird ein Markierfeld z.B. über Dlg.getControl("CheckBox") angesprochen. Aber das funktioniert so nicht bei einer CheckBox, die direkt in der Tabelle liegt. Wie kann ich deren Wert ermitteln (markiert oder nicht)?
Ich hoffe, dass die Frage so verständlich ist, ansonsten erkläre ich gerne mehr...
Zugriff auf Markierfeld im Dokument
Moderator: Moderatoren
Re: Zugriff auf Markierfeld im Dokument
Versuche es mal hiermit:
Code: Alles auswählen
Sub CheckMyCheckBox
oForm = ThisComponent.Sheets(0).DrawPage.Forms.getByIndex(0)
oControl = oForm.getByName("CheckBox")
if oControl.State = 1 then
msgBox "CheckBox ist an"
else
MsgBox "CheckBox ist aus"
end if
End Sub
Software hat keinen Verstand - benutze deinen eigenen...!
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Re: Zugriff auf Markierfeld im Dokument
Vielen Dank, das hat mich schon weiter gebracht. Ich muss zwar sheets(3) verwenden, weil es die vierte Tabelle im Dokument ist, aber ansonsten klappt das vorzüglich.
War bestimmt nicht meine letzte Frage...
War bestimmt nicht meine letzte Frage...
