LibreOfficeDev 25.8 Βοήθεια
Επιστρέφει ένα αντικείμενο που αντιπροσωπεύει μια αυστηρά δηλωμένη τιμή που αναφέρεται στο σύστημα τύπων Uno.
Αυτό το αντικείμενο μετατρέπεται αυτόματα σε Any του αντίστοιχου τύπου όταν μεταβιβαστεί στο Uno. Ο τύπος πρέπει να προσδιορίζεται από το πλήρως αναγνωρισμένο όνομα τύπου Uno.
Το API τουLibreOfficeDev χρησιμοποιεί συχνά τον τύπο Any. Είναι το αντίστοιχο του τύπου Variant που είναι γνωστός από άλλα περιβάλλοντα. Ο τύπος Any περιέχει έναν αυθαίρετο τύπο Uno και χρησιμοποιείται σε γενικές διεπαφές Uno.
  CreateUnoValue(Type As String, Value As Object) As Object 
Αντικείμενο
| Name | Type | Description | 
|---|---|---|
| Type | String | The fully qualified Uno type name. Supported data types are void, char, boolean, byte, short, unsigned short, long, unsigned long, hyper, unsigned hyper, float, double, string, type, and any. Names are case sensitive and may be preceded by square brackets to indicate an array. | 
| Value | Object | A strictly typed value. | 
Εάν το CreateUnoValue δεν μπορεί να μετατρέψει την τιμή στον καθορισμένο τύπο Uno, παρουσιάζεται σφάλμα. Η υπηρεσία com.sun.star.script.Converter είναι υπεύθυνη για τη μετατροπή.
   byte_sequence_object = CreateUnoValue("[]byte", Array(85, 3, 27))
Αυτή η συνάρτηση προορίζεται για χρήση σε περιπτώσεις όπου ο προεπιλεγμένος μηχανισμός μετατροπής τύπου Basic σε Uno είναι ανεπαρκής. Αυτό συμβαίνει με την κλήση γενικών μεθόδων API που βασίζονται σε Any, όπως com.sun.star. beans.XPropertySet.setPropertyValue(), ή com.sun.star.container.XNameContainer.insertByName(). Το CreateUnoValue() ορίζει ένα αντικείμενο τιμής για τον άγνωστο τύπο Uno.
Αυτό το παράδειγμα χρησιμοποιεί τη μέθοδο com.sun.star.beans.XPropertySet.addProperty( για τη δημιουργία μιας ιδιότητας εγγράφου της οποίας οι προεπιλεγμένες τιμές απαιτούν χρήση του CreateUnoValue():
  With ThisComponent.DocumentProperties.getUserDefinedProperties()
      .addProperty("FOO", com.sun.star.beans.PropertyAttribute.REMOVEABLE, CreateUnoValue("double", 23))
  End With	
Μπορείτε επίσης να χρησιμοποιήσετε αυτήν τη συνάρτηση για να μεταβιβάσετε τιμές non-Any, αλλά αυτό δεν συνιστάται. Εάν η Basic γνωρίζει ήδη τον τύπο προορισμού, η χρήση της συνάρτησης CreateUnoValue() θα οδηγήσει μόνο σε πρόσθετες λειτουργίες μετατροπής που επιβραδύνουν την εκτέλεση της Basic.