您好,有人可以帮我解决以下问题吗:我想通过 Delphi 和 OOoTools 工具包将文本放在 scalc 打开 Office 电子表格单元格中。

以下代码不起作用:

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);

有人知道为什么不吗?感谢广告

有帮助吗?

解决方案

Horizo​​ntalJustification 似乎需要一个枚举值,但您给出了一个字符串。你必须查找的值 com.sun.star.table.CellHoriJustify.CENTER 并填写你的 ooParams[0].Value 用它。

这是查找枚举值的方法: http://www.oooforum.org/forum/viewtopic.phtml?t=16383

在你的情况下 com.sun.star.table.CellHoriJustify.CENTER 等于 2,所以你需要:

ooParams[0].Name  := 'HorizontalJustification';
ooParams[0].Value := 2;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top