Pomoc Collabora Office 24.04
Zwraca obiekt odpowiadający dokładnie wprowadzonej wartości odnoszącej się do systemu typu Uno.
Po przekazaniu do UNO obiekt jest automatycznie konwertowany do odpowiadającego mu typu Any. Typ musi zostać określony przez w pełni kwalifikowaną nazwę typu UNO.
Interfejs API Collabora Office często używa typu Any. Jest odpowiednikiem typu Variant znanego z innych środowisk. Typ Any zawiera jeden dowolny typ UNO i jest używany w ogólnych interfejsach UNO.
CreateUnoValue(Type As String, Value As Object) As Object
Obiekt
Typ: W pełni kwalifikowana nazwa typu UNO. Obsługiwane typy danych to void, char, boolean, byte, short, unsigned short, long, unsigned long, hyper, unsigned hyper, float, double, string, type i any. W nazwach rozróżniana jest wielkość liter i mogą być poprzedzone nawiasami kwadratowymi, aby wskazać tablicę.
Value: Ściśle wpisana wartość.
byte_sequence_object = CreateUnoValue("[]byte", Array(85, 3, 27))
Jeśli CreateUnoValue nie może przekonwertować wartości na określony typ UNO, wystąpi błąd. Za konwersję odpowiada usługa com.sun.star.script.Converter.
Ta funkcja jest przeznaczona do użycia w sytuacjach, gdy domyślny mechanizm konwersji typu Basic na UNO jest niewystarczający. Dzieje się tak, wywołując ogólne metody API oparte na Any, takie jak com.sun.star.beans.XPropertySet.setPropertyValue() lub com.sun.star.container.XNameContainer.insertByName(). CreateUnoValue() ustawia obiekt wartości dla nieznanego typu UNO.
W tym przykładzie użyto com.sun.star.beans.XPropertySet.addProperty() metody tworzenia właściwości dokumentu, której wartości domyślne wymagają użycia CreateUnoValue():
With ThisComponent.DocumentProperties.getUserDefinedProperties()
.addProperty("FOO", com.sun.star.beans.PropertyAttribute.REMOVEABLE, CreateUnoValue("double", 23))
End With
Możesz także użyć tej funkcji do przekazywania wartości innych niż Any, ale nie jest to zalecane. Jeśli Basic zna już typ docelowy, użycie funkcji CreateUnoValue() doprowadzi tylko do dodatkowych operacji konwersji, które spowalniają wykonywanie Basic.