Den sön 17 maj 2020 kl 03:28 skrev Jim <[email protected]>: > I started experimenting with calling a basic function from a python > script. I was surprised that without to much trouble I got it to work to > a certain extent. > > I am working on linux Mint. > > I started with a basic Sub I found. In it's original form it had 3 rgb > values hard coded and it popped up a message box that displayed the > color value from the rgb input. I rewrote it as a Function that took the > rgb values as parameters. > > Here is the basic: > > Function ColorExampleFunc(r as long, g as long, b as long) > Dim lVar As Long > lVar = rgb(207,231,245) > msgbox "The color " & lVar & " consists of:" & Chr(13) &_ > "red= " & red(lVar) & Chr(13)&_ > "green= " & green(lVar) & Chr(13)&_ > "blue= " & blue(lVar) & Chr(13) , 64,"colors" > > end function > > Here is the python: > > #test_basic.py > import os > > result = os.system('soffice > "macro:///Standard.Module1.ColorExampleFunc(207,231,245)"') > > This works as it will pop up the message box with the color value > displayed. What I need to do is capture that color value (which is > usually an eight digit number) in variable in the python script. > > I printed result and it was equal to 0. >
Well, you "rewrote it as a function", except that you didn't. The difference between subroutines and functions (at least in Basic), is that functions returns something. Yours don't, as far as I can see. To return a value in Basic (at least LibreOffice Basic), you just set a value to the function itself: ColorExampleFunc=Something I'm not sure what those eight digit numbers you are looking for are. Is it something like b+g×2⁸+r×2¹⁶? Kind regards Johnny Rosenberg > > It's been a long time since I did anything in basic. I imagine I would > have to get rid of the msgbox code and set the rgb values equal to a > variable and then return them, but I'm not sure how to do it. > > Does anyone know how to get the color value in the python script? > > Thanks, Jim > > > -- > To unsubscribe e-mail to: [email protected] > Problems? > https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ > Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette > List archive: https://listarchives.libreoffice.org/global/users/ > Privacy Policy: https://www.documentfoundation.org/privacy > -- To unsubscribe e-mail to: [email protected] Problems? https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette List archive: https://listarchives.libreoffice.org/global/users/ Privacy Policy: https://www.documentfoundation.org/privacy
