Texto de celda central de scalc de automatización de Delphi OpenOffice
-
22-07-2019 - |
Pregunta
Hola, alguien podría ayudarme con lo siguiente: Quiero centrar el texto en una celda de hoja de cálculo de oficina abierta scalc a través de Delphi y el kit de herramientas OOoTools.
El siguiente código no funciona:
sRange := '$A$3:$A$3';
ooParams := CreateUnoStruct('com.sun.star.beans.PropertyValue', 1);
ooParams[0].Name := 'ToPoint';
ooParams[0].Value := sRange;
execDispatch('.uno:GoToCell', ooParams);
ooParams := CreateUnoStruct('com.sun.star.beans.PropertyValue', 1);
ooParams[0].Name := 'HorizontalJustification';
ooParams[0].Value := 'com.sun.star.table.CellHoriJustify.CENTER';
execDispatch('.uno:HorizontalJustification', ooParams);
¿Alguien tiene alguna idea de por qué no? Anuncio de agradecimiento
Solución
Parece que HorizontalJustification necesita un enumvalue, pero estás dando una cadena. Debe buscar el valor de com.sun.star.table.CellHoriJustify.CENTER
y llenar su ooParams [0] .Value
con él.
Aquí hay una manera de buscar un valor numérico: http: // www. oooforum.org/forum/viewtopic.phtml?t=16383
En su caso, com.sun.star.table.CellHoriJustify.CENTER
es igual a 2, por lo que necesita:
ooParams[0].Name := 'HorizontalJustification';
ooParams[0].Value := 2;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow