我目前正在开发Office扩展,并且在某一点上有一些麻烦。 我在OpenOffice Writer选项卡中设置了3个文本框。 我现在要获取用户输入到这些字段中的文本。Open Office Extension从设置页面获取文本字段的值
我尝试这样做:
XControl textfield2 = _xControlCont.getControl("TextField2");
XTextComponent username = (XTextComponent) UnoRuntime.queryInterface(XTextComponent.class, textfield2);
passwd = password.getText();
我得到一个空指针异常右一开始,我觉得现在的问题是,这种代码我不能得到文本字段的值时Optionspage未打开。
我正在运行有点相同的代码在一个单独的类,我测试如果所有输入的值是正确的,如果你可以连接到我们的服务器。 我试图用getter方法从那里获取代码,但这并没有工作。
这里是一个例子:
@Override
public void actionPerformed(ActionEvent actionEvent) {
boolean testConnection = false;
XControl label = _xControlCont.getControl("Label4");
XFixedText xLabel = (XFixedText) UnoRuntime.queryInterface(XFixedText.class, label);
XControl textfield2 = _xControlCont.getControl("TextField2");
XTextComponent username = (XTextComponent) UnoRuntime.queryInterface(XTextComponent.class, textfield2);
user = username.getText();}
然后超出该方法我使用吸气剂的。 这是我得到的异常:
在org.openoffice.demo.DocumentUpload.run(DocumentUpload.java:56)异常的线程 “主题-15” 显示java.lang.NullPointerException
我希望你们其中一位能帮助我。
如果我理解正确,这段代码工作:'passwd = password.getText();'。请将代码发布到发生问题的位置。还有什么是错误信息或不正确的行为?请参阅http://stackoverflow.com/help/how-to-ask。 –
增加了例外。 – FreeKill
请发布完整的异常消息,以显示发生错误的位置。另外'_xControlCont'定义在哪里?也许它没有一个名为“TextField2”的控件。如果可能,编写一个显示问题的[MCVE](http://stackoverflow.com/help/mcve)。 –