Modul
Indhald
Innhaldsliste 🔎︎

# CreateUnoValue-funksjonen

Returnerer eit objekt som inneheld ein nøyaktig innskrive verdi som refererer til typesystemet Uno.

Dette objektet vert konvertert automatisk til ein Any av tilsvarande type når det vert overført til Uno. Typen må vera spesifisert med fullt kvalifiserande Uno-typenamn.

LibreOffice API brukar Any-typen ofte. Det er motstykket til Variant-type kjend frå andre miljø. Any-typen inneheld ein vilkårleg Uno-type og vert brukt i generiske Uno-grensesnitt.

## Syntaks:

    oUnoValue = CreateUnoValue( "[]byte", MinBasicVerdi ) ' for å få ein bytesekvens

Viss CreateUnoValue ikkje kan konverterast til den spesifiserte Uno-typen vert det generert ein feil. Ved konverteringa vert tenesta TypeConverter brukt.

Denne funksjonen er meint å brukast i dei tilfella der standardrutinane for typekonvertering frå Basic til Uno ikkje rekk til. Dette kan skje når du prøver å få tilgang til generiske Any-baserte grensesnitt som for eksempel XPropertySet::setPropertyValue( Name, Value ) eller X???Container::insertBy???( ???, Value ) frå LibreOffice Basic. Køyretidsmodulane i Basic kjenner ikkje desse typane igjen sidan dei berre er definerte i den tilsvarande tenesta.

I slike situasjonar vil LibreOffice Basic prøva å velja den typen som passar best for den Basic-typen som skal konverterast. Dersom feil type vert vald, vil det oppstå ein feil. Bruk funksjonen CreateUnoValue() for å laga ein verdi for den ukjende Uno-typen.

Du kan også bruka denne funksjonen for å overføra ikkje-Any verdiar, men det vert ikkje tilrådd. Om Basic kjenner til måltypen frå før, vil bruk av funksjonen CreateUnoValue() føra til ytterlegare konverteringsfunksjonar som gjer at utføringa av Basic-programmet går saktare.