< 戻る 【 Calc 】
uno XDispatchHelperコマンドの
TextdirectionTopToBottom
でセル内文字を縦書きに設定
セルの設定を横書きから縦書きに変更するマクロ
//DispatchHelper TextdirectionTopToBottom
importClass(Packages.javax.swing.JOptionPane);
importClass(Packages.java.lang.System);
importClass(Packages.com.sun.star.beans.PropertyValue);
importClass(Packages.com.sun.star.frame.XDispatchHelper);
importClass(Packages.com.sun.star.frame.XDispatchProvider);
importClass(Packages.com.sun.star.uno.UnoRuntime);
importClass(Packages.com.sun.star.frame.XModel);
xSheetComponent = XSCRIPTCONTEXT.getDocument();
importClass(Packages.java.lang.Thread);
// utility method to ease creation of PropertyValue objects
function createProperty(n, v){
prop = new PropertyValue();
prop.Name =n;
prop.Value=v;
return prop
}
try{
// get important objects from the XSCRIPTCONTEXT
xDispatchProvider = UnoRuntime.queryInterface(XDispatchProvider, XSCRIPTCONTEXT.getDesktop());
ctx = XSCRIPTCONTEXT.getComponentContext();
// create an UNO service object
smgr = ctx.getServiceManager();
sdh = smgr.createInstanceWithContext("com.sun.star.frame.DispatchHelper", ctx);
xDispatchHelper = UnoRuntime.queryInterface(XDispatchHelper, sdh);
// get XDispatchProvider
oModel = UnoRuntime.queryInterface(XModel, xSheetComponent);
oController = oModel.getCurrentController();
oFrame = oController.getFrame()
oDispatchProvider = UnoRuntime.queryInterface(XDispatchProvider, oFrame);
// dispatch
args = new Array;
args[0]= createProperty('ToPoint', "A1");
xDispatchHelper.executeDispatch(oDispatchProvider, ".uno:GoToCell", "", 0, args);
// Enter String
oStr = "こんにちは。\n LO Ver4.2\n 3月27日\n ( 27は全角 )"
args[0]= createProperty('StringName', oStr);
xDispatchHelper.executeDispatch(oDispatchProvider, ".uno:EnterString", "", 0, args);
Thread.sleep(2000); // wait 2sec
// TextdirectionTopToBottom
args = []
xDispatchHelper.executeDispatch(oDispatchProvider, ".uno:TextdirectionTopToBottom", "", 0, args);
JOptionPane.showMessageDialog(null, "Success\n(LO7.6.2.1)");
}catch(e){
//Error Handling
errorname = e.name;
errormsg = e.message;
oDisp= errorname + "\n" + errormsg;
JOptionPane.showMessageDialog(null, eDisp);
}finally{
JOptionPane.showMessageDialog(null, oDisp);
System.gc()
}