Module
Contents
Index 🔎︎

# CreateUnoValue Function

აბრუნებს ობიექტს, რომელიც წარმოადგენს პირდაპირ ჩაწერილ მნიშვნელობას, რომელიც მიუთითებს Uno ტიპის სისტემას.

ობიექტი ავტომატურად გადადის ნებისმიერ შესაბამის ტიპში, როდესაც გადაეცემა Uno-ს. ტიპი უნდა მიეთითოს Uno-ის სრული ტიპით.

The LibreOffice API frequently uses the Any type. It is the counterpart of the Variant type known from other environments. The Any type holds one arbitrary Uno type and is used in generic Uno interfaces.

## Syntax:

    oUnoValue = CreateUnoValue( "[]byte", MyBasicValue ) ' to get a byte sequence.

თუ CreateUnoValue-ს გადაყვანა მითითებულ Uno-ს ტიპში ვერ მოხერხდება, მოხდება შეცდომა. გადაყვანისთვის გამოიყენება TypeConverter სერვიზი.

ფუნქცია განკუთვნილია ისეთ სიტუაციებში გამოსაყენებლად, სადაც საწყისი Basic დან Uno ტიპში გადაყვანის მეთოდი არასაკმარისია. ეს შეიძლება მოხდეს მაშინ, როდესაც თქვენ ცდით მიმართოთ ზოგადათ ნებისმიერ ინტერფეისს, როგორიც XPropertySet::setPropertyValue( Name, Value ) ან X???Container::insertBy???( ???, Value ), LibreOffice Basic -დან. Basic გაშვება ვერ გამოიცნობს ამ ტიპებს, რადგანაც ისინი არიან განსაზღვრულები მხოლოდ შესაბამის სერვისში.

ამ სიტუაციაში, LibreOffice Basic-ი ირჩევს საუკეთესო დამთხვევის ტიპს Basic-ის ტიპისთვის, რომლის გადაყვანაც გსურთ. მაგრამ თუ აირჩევთ არასწორ ტიპს, მოხდება შეცდომა. უცნობი Uno ტიპების მნიშვნელობების შესაქმნელად გამოიყენეთ CreateUnoValue() ფუნქცია.

თქვენ შეგიძლიათ გამოიყენოთ ეს ფუნქცია non-Any მნიშვნელობების გადასაცემად, მაგრამ ეს რეკომნდირებული არ არის. თუ Basic-მა უკვე იცის სამიზნე ტიპი. reateUnoValue() ფუნქცია მიგიყვანთ დამატებით გადაყვანის ოპერაციებამდე, რომელიც შეანელებს Basic-ის გაშვებას.