Formular - Formatierung, Eigenschaften usw

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

dcssd
***
Beiträge: 50
Registriert: Mi, 10.03.2010 13:12

Formular - Formatierung, Eigenschaften usw

Beitrag von dcssd »

Halli hallo Basic bzw Java - Kenner

hab das Thema schon im Forum "Calc" angesprochen, die meinten ich soll mich an euch wenden.

AAAlso...

Ich hab eine Calc-Datei mit vielen Formularen (Textfelder, Optionsfelder, usw.) welche mir helfen verschiedenste Rechenabläufe durch "Knopfdrücken" zu erledigen.
Jedes hat somit eine Verbundene Zelle, welche dann mittels calc-formeln die weitere Berechnung ausführt. Soweit so gut.

Nun zu meiner Frage: kann man mit einem Macro, oder ähnlichen. Ein Formularfeld in seiner Eigenschaft, Aussehen oder Funktion ändern?

Bsp.:wenn Optionsfeld 1 Wahr ist, Beschriftungsfeld 3 einen grünen Hintergrund bekommt wenn nicht, dann wird es grau... (oder nur lesbar... oder oder oder...)

Ich hab versucht nen Makro selbst zu erstellen, indem ich einfach mal aufgenommen hab, was er ändern soll wenn ich den "Knopf" drücke und wieder rückgängig.

dabei raus kam das:

Code: Alles auswählen

sub Formularbedingung
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ControlProperties"
args1(0).Value = true

dispatcher.executeDispatch(document, ".uno:ControlProperties", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ShowProperties"
args2(0).Value = false

dispatcher.executeDispatch(document, ".uno:ShowProperties", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ShowProperties"
args3(0).Value = false

dispatcher.executeDispatch(document, ".uno:ShowProperties", "", 0, args3())


end sub


sub Formularbedingung2
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$O$11"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ControlProperties"
args2(0).Value = true

dispatcher.executeDispatch(document, ".uno:ControlProperties", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ShowProperties"
args3(0).Value = false

dispatcher.executeDispatch(document, ".uno:ShowProperties", "", 0, args3())

rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "ShowProperties"
args4(0).Value = false

dispatcher.executeDispatch(document, ".uno:ShowProperties", "", 0, args4())


end sub
Beim Ausführen passiert allerdings gar nichts, ihr seht sicherlich warum :)

Vielen Dank im Voraus